小编kir*_*anh的帖子

使用d3 v4重新创建可折叠力布局

我一直在尝试使用d3js v4创建一个可折叠的力布局,类似于这个:https://mbostock.github.io/d3/talk/20111116/force-collapsible.html

我已经能够创建布局本身.但无法更新它.有人可以帮忙吗?

这是我的js代码:

var width = 960,
    height = 600;

var root = {
	"name": "server1900",
	"children": [{
		"name": "server913",
		"_children": null,
		"children": [{
			"name": "server948"
		}, {
			"name": "server946"
		}]
	}, {
		"name": "server912",
		"_children": null,
		"children": [{
			"name": "server984"
		}, {
			"name": "server983"
		}]
	}, {
		"name": "server911",
		"_children": null,
		"children": [{
			"name": "server999",
			"_children": null,
			"children": [{
				"name": "server992"
			}]
		}]
	}]
};

root = d3.hierarchy(root);

var i = 0;

var transform = d3.zoomIdentity;; …
Run Code Online (Sandbox Code Playgroud)

d3.js force-layout d3v4

3
推荐指数
1
解决办法
6658
查看次数

我需要获取身份验证令牌并将其设置在标题中

我是 Spring Boot 和响应式编程的新手。

我正在使用 spring webflux webclient 作为外部 api 服务。我需要获取身份验证令牌并将其设置在标题中

WebClient.builder()
            .baseUrl(baseUrl)
            .filter((request, next) -> {
                return next.exchange(request)
                        .flatMap((Function<ClientResponse, Mono<ClientResponse>>) clientResponse -> {
                            if (clientResponse.statusCode().value() == 401) {
                                return authenticate().map(token -> {
                                    Token accessToken = authenticate().block();
                                    ClientRequest retryRequest = ClientRequest.from(request).header("Authorisation", "Bearer " + accessToken.getAccessToken()).build();
                                    return next.exchange(retryRequest);
                                }).
                            } else {
                                return Mono.just(clientResponse);
                            }
                        });
            })
            .defaultHeader("Authorization", "Bearer " + authToken.getAccessToken())
            .build();


private Mono<Token> authenticate() {
    MultiValueMap<String, String> params = new LinkedMultiValueMap();
    params.add("client_id", clientId);
    params.add("client_secret", clientSecret);
    params.add("grant_type", "password");
    params.add("username", username); …
Run Code Online (Sandbox Code Playgroud)

spring-boot spring-webflux

2
推荐指数
1
解决办法
4771
查看次数

标签 统计

d3.js ×1

d3v4 ×1

force-layout ×1

spring-boot ×1

spring-webflux ×1