尝试使用 HttpClient 访问 .Net webservice

Try to access .Net webservice using HttpClient

下面是.NET C#语言的示例,用于为用户

获取资源列表

使用适当的 HEADER 详细信息准备 HttpRequest

    HttpClient client = new HttpClient();
    // Authorization header value format is "VST {tokenvalue}"
    client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("VST", securityToken); 
    client.DefaultRequestHeaders.Add("ContentType", "text/json");
    client.DefaultRequestHeaders.Add("Accept", "text/json");*

需要在Java中编写类似的代码,我在java中编写了以下代码来访问web-service。

获取错误:

HTTP Error 400. 

请求的 header 名称无效。

HttpGet request = new HttpGet(getRequestUrl(baseUrl,   VideologyConstants.GET_CUSTOMERS_API_URL));
request.setHeader(HttpHeaders.AUTHORIZATION, "VST {" + securityToken + "}");

client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("VST", securityToken);

将产生这个 header 值

授权:VST {securityToken}

在 java 中添加 header 的方法是。

httpGet.setHeader("Authorization","VST "+token)

这里可以查看javaAPIhttp://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/index.html