使用CF 9.0.1
我的目标是从另一台服务器检索JSON值集,然后在后续CF语句中处理结果。远程服务器需要客户端证书。目前,一切似乎都有效(返回代码200),但我没有得到任何数据。
当我cfdump结果时,结构存在,方法定义等...只是没有数据。显然,我有些不对劲。
当我将URL放入IE或其他浏览器时,将返回JSON流。
好的,这是我的实验。 (可能是一些错字,因为我现在无法复制/粘贴)
<!--- block 1 --->
<cfset objSecurity = createObject("java", "java.security.Security") />
<cfset storeProvider = objSecurity.getProvider("Jsave.JCE") />
<cfset objSecurity.removeProvider("Jsave.JCE") />
<!--- block 2 --->
<cfhttp
url = "https://server.a.b.c/rest/xxx"
clientcert = "C:\Xy\Z"
clientCertPassword = "mypass"
method = "Get"
result="result"
resolveurl="yes" throwOnError="true" >
<!--- block 3 --->
<cfhttpparam type="header" name="Mimetype" value = "application/json" >
<cfhttpparam type="header" name="Accept-Encoding" value="*" >
<cfhttpparam type="header" type="header" name="TE" value="default;q=0">
</cfhttp>
如果我关闭第1块和第3块,我得到相同的结果 - 即没有错误但没有预期的数据。
cfdump给出 Filecontent .... java.io.ByteArrayOutputStream的对象...类名java.io.ByteArrayOutputStream ...方法(标准方法) 标题......看起来很正常 Mimetype ... application / json ResponseHeader ......似乎没什么异常 状态代码200
除了拨打电话之外,我还需要做些什么。鉴于我没有尝试托管JSON服务,而只是尝试检索通过JSON提供答案的值,我在哪里出错 - 或者我需要做出哪些未知设置?
我最初收到错误,直到我添加了证书链,但这一切都得到了纠正。
这是在Microsoft服务器,tomcat环境,IIS上运行。
如何获得预期的数据值,我们将非常感激。