Retrofit无法返回响应体... okhttp loggin拦截器显示正文已收到

时间:2018-02-21 07:04:45

标签: java retrofit2 okhttp3

我们基本上试图将改造用作oauth的休息客户。

同样,我们正在尝试获取客户端凭据授予。

因此我们对令牌端点进行休息调用,传递所有url编码的参数。

呼叫成功,因为我们在响应代码中得到200。 Okhttp loggin拦截器显示响应主体包含access_token和其他字段。

但是,改装响应无法解析accessestoken模型。令牌空白。

        log.info("Passing input as Body in x-www-form-urlencoded");
        //log.info("config.getApiKey() && config.getApiSecret()=="+config.getApiKey()+" "+ config.getApiSecret());
        inputBody.put(GRANT_TYPE, CLIENT_CREDENTIALS);
        inputBody.put(CLIENT_ID, "abcd");
        inputBody.put(CLIENT_SECRET, "d=");
        inputBody.put(RESOURCE, HTTPS_GRfgeAPH_WINDOWS_NET);
        log.info("inputBody=="+inputBody.get(CLIENT_ID));
        /*if(handleResponse(azureLoginTokenService.getToken(inputBody).execute())!=null){
            log.info("inside if");
            tokenOutput.setAzureLoginTokenModel(handleResponse(azureLoginTokenService.getToken(inputBody).execute()));
            clientCredentialGrantToken = tokenOutput.getAzureLoginTokenModel().getAccessToken();
            isTokenExpired = false;
            return clientCredentialGrantToken;
        }
        else{

            log.info ("Could not fetch azure token!!!!!");
            return null;
        }

* /             log.info(“inside if”);             // AzureLoginTokenModel azureToken = handleResponse(azureLoginTokenService.getToken(inputBody).execute());             AzureLoginTokenModel azureToken = azureLoginTokenService.getToken(inputBody).execute()。body();             log.info(“令牌模型”+ azureToken.getAccessToken());

@JsonInclude(JsonInclude.Include.NON_NULL) @JsonPropertyOrder({     “token_type”     “过期日期在”,     “ext_expires_in”     “到期”,     “not_before”     “资源”,     “ACCESS_TOKEN” }) 公共类AzureLoginTokenModel {

@JsonProperty("token_type")
private String tokenType;
@JsonProperty("expires_in")
private String expiresIn;
@JsonProperty("ext_expires_in")
private String extExpiresIn;
@JsonProperty("expires_on")
private String expiresOn;
@JsonProperty("not_before")
private String notBefore;
@JsonProperty("resource")
private String resource;
@JsonProperty("access_token")
private String accessToken;
@JsonIgnore
private Map<String, Object> additionalProperties = new HashMap<String, Object>();

@JsonProperty("token_type")
public String getTokenType() {
    return tokenType;
}

@JsonProperty("token_type")
public void setTokenType(String tokenType) {
    this.tokenType = tokenType;
}

@JsonProperty("expires_in")
public String getExpiresIn() {
    return expiresIn;
}

@JsonProperty("expires_in")
public void setExpiresIn(String expiresIn) {
    this.expiresIn = expiresIn;
}

@JsonProperty("ext_expires_in")
public String getExtExpiresIn() {
    return extExpiresIn;
}

@JsonProperty("ext_expires_in")
public void setExtExpiresIn(String extExpiresIn) {
    this.extExpiresIn = extExpiresIn;
}

@JsonProperty("expires_on")
public String getExpiresOn() {
    return expiresOn;
}

@JsonProperty("expires_on")
public void setExpiresOn(String expiresOn) {
    this.expiresOn = expiresOn;
}

@JsonProperty("not_before")
public String getNotBefore() {
    return notBefore;
}

@JsonProperty("not_before")
public void setNotBefore(String notBefore) {
    this.notBefore = notBefore;
}

@JsonProperty("resource")
public String getResource() {
    return resource;
}

@JsonProperty("resource")
public void setResource(String resource) {
    this.resource = resource;
}

@JsonProperty("access_token")
public String getAccessToken() {
    return accessToken;
}

@JsonProperty("access_token")
public void setAccessToken(String accessToken) {
    this.accessToken = accessToken;
}

@JsonAnyGetter
public Map<String, Object> getAdditionalProperties() {
    return this.additionalProperties;
}

@JsonAnySetter
public void setAdditionalProperty(String name, Object value) {
    this.additionalProperties.put(name, value);
}

}

正在解析身体......

{     “token_type”:“持票人”,     “expires_in”:“3600”,     “ext_expires_in”:“0”,     “expires_on”:“1519203625”,     “not_before”:“1519199725”,     “资源”:“https://graph.windows.net”,     “的access_token”: “eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6IlNTUWRoSTFjS3ZoUUVEU0p4RTJnR1lzNDBRMCIsImtpZCI6IlNTUWRoSTFjS3ZoUUVEU0p4RTJnR1lzNDBRMCJ9.eyJhdWQiOiJodHRwczovL2dyYXB” }

即使在response.raw&gt;&gt;&gt;中也不存在改造响应。

0 个答案:

没有答案