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
Rest CFHTTP HTTPS连接失败CF8_Rest_Ssl_Coldfusion_Connection_Cfhttp - Fatal编程技术网

Rest CFHTTP HTTPS连接失败CF8

Rest CFHTTP HTTPS连接失败CF8,rest,ssl,coldfusion,connection,cfhttp,Rest,Ssl,Coldfusion,Connection,Cfhttp,我编写了一个简单的应用程序来测试RESTful API(由会计应用程序提供)。我已经在Firefox中安装了“Poster”来测试“GET and POST”XML,API的表现也应该如此。我编写了一个简单的“GET”测试页面,从测试CF8应用程序中调用API,API返回了我期望的结果。我不能在测试CF8应用程序中发布 我已在application.cfm中插入以下内容: <!--- fix for HTTPS connection failures ---> <cfif NO

我编写了一个简单的应用程序来测试RESTful API(由会计应用程序提供)。我已经在Firefox中安装了“Poster”来测试“GET and POST”XML,API的表现也应该如此。我编写了一个简单的“GET”测试页面,从测试CF8应用程序中调用API,API返回了我期望的结果。我不能在测试CF8应用程序中发布

我已在application.cfm中插入以下内容:

<!--- fix for HTTPS connection failures --->
<cfif NOT isDefined("Application.sslfix")>
    <cfset objSecurity = createObject("java", "java.security.Security") />
    <cfset objSecurity.removeProvider("JsafeJCE") />
    <cfset Application.sslfix = true />
</cfif>

这是失败的代码:

<cfprocessingdirective suppressWhiteSpace = "Yes">    
    <cfxml variable="customerxml">
        <?xml version="1.0" encoding="UTF­8" standalone="yes"?>
        <dataentry>
            <interface name="Customer Edit"></interface>
            <entity>
                <attribute name="Customer Code">REP003</attribute>
                <attribute name="Customer Name">Repsol3</attribute>
                <attribute name="Address Line 1">El House</attribute>
                <attribute name="Address Line 2">El Street</attribute>
                <attribute name="Address Line 3">El Town</attribute>
            </entity>
        </dataentry>
    </cfxml>
</cfprocessingdirective>

<cfhttp 
    method="post" 
    url="https://***/wsapi/1.1/dataentry/"
    username="***"
    password="***"
    charset="utf-8">
    <cfhttpparam type="header" name="Accept-Encoding" value="*" />
    <cfhttpparam type="header" name="TE" value="deflate;q=0" />
    <cfhttpparam type="header" name="Content-Type" value="application/xml" />
    <cfhttpparam name="XML_Test" type="xml" value="#customerxml#">
</cfhttp> 

REP003
雷普索尔3
埃尔豪斯酒店
埃尔街
埃尔镇
有很多关于这个主题的文章发表了,我也尝试了很多东西,但是有些帖子甚至比我的更老!欢迎提供最新帮助。

来自评论

使用
接收连接失败时,我尝试的第一件事是验证您是否可以使用浏览器从ColdFusion服务器导航到URL。如果该请求不起作用,那么它也不会从ColdFusion调用中起作用。在继续之前,先解决该问题


使用SSL(HTTPS)连接到安全站点时的另一个常见问题是,该证书不受信任或不为ColdFusion(Java)所知。在这些情况下,您需要将他们的证书导入到用于ColdFusion的Java密钥库中。

以下是关于如何安装自签名证书或Java库未安装的其他ssl证书的详细说明

已经帮了我一千次了。
Matt

为什么要删除JsafeJCE安全提供程序?我认为那没用。最可能的问题是您需要将他们的SSL证书导入服务器的Java密钥库。我已经概述了中的步骤。您可以发布实际的响应/错误吗?另一件要验证的事情是您可以打开浏览器并从ColdFusion服务器连接到URL。@Miguel-F-我在ColdFusion服务器上打开IE并输入URL“https://**/wsapi/…”,但它失败了,建议我添加“www”-然后它就成功了!我在上面的代码中包含了www,但没有收到“连接失败”的消息——相反,我从尝试连接的应用程序中收到了一条错误消息。进步!!伟大的很高兴你通过了那个障碍。我将继续为您添加一个答案,因为这回答了有关连接失败的问题。如果你遇到了其他问题,请发一个新问题。祝你好运