作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我开始使用 Coldfusion 8 进行 Bullhorn SOAP 网络服务集成。我在身份验证方面遇到问题 - 获取 session 。我试过像别人那样做 here :
<cfset session_arg = structnew()>
<cfset session_arg.username = 'xxxxxx'>
<cfset session_arg.password = 'xxxxxxx'>
<cfset session_arg.apiKey = 'xxxxxxxxxxxxxxxxxxxxxxx'>
<cfinvoke
webservice = "https://api.bullhornstaffing.com/webservices-2.0/?wsdl"
method = "startSession"
returnvariable = "bhSession"
argumentcollection = "#session_arg#">
</cfinvoke>
我已将 1.1 端点替换为 2.0 网络服务端点。startSession() 工作正常,但我应该使用 getSession() 获取 session 值,但它在返回的对象中不可用 - 它是来自父类的函数。
我试过使用 bhSession.super.getSession() 但也没有用。
对于如何处理此集成的任何建议,我将不胜感激:
我是否应该完全离开 cfinvoke/createObject 并继续CFHTTP 和手工制作 SOAP 信封?
或者可能使用一些 Java 库来进行集成?
或者可能使用 API 的 1.1 版本?
我使用 soapUI 得到的 SOAP 响应:
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns2:startSessionResponse xmlns:ns2="http://apiservice.bullhorn.com/">
<return>
<session>THE_SESSION_VAR</session>
<corporationId>COPRPORATION_ID</corporationId>
<userId>USER_ID</userId>
</return>
</ns2:startSessionResponse>
</S:Body>
</S:Envelope>
那里一切都很好。似乎手动方式是正确的解决方案。
感谢您的帮助。
卢卡斯
最佳答案
最后想通了。
应该使用 GetSOAPResponse 来获取实际响应。
示例代码,如果有人感兴趣的话:
<cfscript>
webservice = createObject("webservice", "https://api.bullhornstaffing.com/webservices-2.0/?wsdl");
webservice.startSession(myUsername, myPassword, myAPIKey);
sessionResult = GetSOAPResponse(webservice);
</cfscript>
sessionResult 将包含所需的 XML。
关于web-services - 使用 Coldfusion 与 Bullhorn SOAP web 服务 API 集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9680329/
我开始使用 Coldfusion 8 进行 Bullhorn SOAP 网络服务集成。我在身份验证方面遇到问题 - 获取 session 。我试过像别人那样做 here : 我已将 1.1
我是一名优秀的程序员,十分优秀!