Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ssl Java应用程序调用IIS中托管的HTTPS WebAPI_Ssl_Java_Rest - Fatal编程技术网

Ssl Java应用程序调用IIS中托管的HTTPS WebAPI

Ssl Java应用程序调用IIS中托管的HTTPS WebAPI,ssl,java,rest,Ssl,Java,Rest,我正在调用托管在IIS(localhost)中的RESTAPI,如下代码所示 HttpPost request = new HttpPost("https://localhost/Identity/oauth/"+"token"); request.addHeader("content-type", "application/json"); request.addHeader("Accept", "application/json"); List<N

我正在调用托管在IIS(localhost)中的RESTAPI,如下代码所示

    HttpPost request = new HttpPost("https://localhost/Identity/oauth/"+"token");   
    request.addHeader("content-type", "application/json");
    request.addHeader("Accept", "application/json");

    List<NameValuePair> params = new ArrayList<NameValuePair>(2);
    params.add(new BasicNameValuePair("username", "myuser"));
    params.add(new BasicNameValuePair("password", "mypass"));
    params.add(new BasicNameValuePair("grant_type", "password"));
    request.setEntity(new UrlEncodedFormEntity(params, "UTF-8"));

    HttpResponse result = httpClient.execute(request);
HttpPost请求=新的HttpPost(“https://localhost/Identity/oauth/“+”代币“);
addHeader(“内容类型”、“应用程序/json”);
addHeader(“接受”、“应用程序/json”);
列表参数=新的ArrayList(2);
添加(新的BasicNameValuePair(“用户名”、“我的用户”);
添加(新的BasicNameValuePair(“密码”、“我的通行证”);
参数添加(新的BasicNameValuePair(“授权类型”、“密码”);
setEntity(新的UrlEncodedFormEntity(参数“UTF-8”);
HttpResponse result=httpClient.execute(请求);
但它给出了以下错误

证书中的主机名不匹配:

我打电话给HTTPS时做错了什么?不过HTTP调用工作正常


谢谢。

您在IIS中使用的是什么类型的证书?它是自签名的还是从CA获得的?这里的问题是您需要将证书的域映射到您调用的域

您的证书已注册到本地主机。如果您的证书已注册到abc.com,请按如下方式更改您的https呼叫

HttpPost request = new HttpPost("https://abc. com/Identity/oauth/"+"token");   
    request.addHeader("content-type", "application/json");

您在IIS中使用的是什么类型的证书?它是自签名的还是从CA获得的?这里的问题是您需要将证书的域映射到您调用的域

您的证书已注册到本地主机。如果您的证书已注册到abc.com,请按如下方式更改您的https呼叫

HttpPost request = new HttpPost("https://abc. com/Identity/oauth/"+"token");   
    request.addHeader("content-type", "application/json");

您是否尝试连接到证书中提到的实际域,而不是连接到
localhost
?该帖子是否回答了您的问题?您是否尝试连接到证书中提到的实际域,而不是连接到
localhost
?该帖子是否回答了您的问题?