点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
SAPUI5您好,
在发布到SAP后端时,我仍然遇到一些问题。
问题:
我正在使用jQuery通过以下代码发布到SAP后端:
我在SAP的传入Web服务调用中添加了调试器,它显示为方法:选项,而不是方法:POST 。
我已经从本地网络服务器上通过sap cloud门户对此进行了测试。
大人物
当我只是简单地通过Internet Explorer中的HTML文件运行该代码并查看调试器时,它显示方法:POST 并将我的数据添加到表中。
我的本地代码: http://pastie.org/5477806
现在很大了,但是,当我在Firefox/Chrome中运行相同的文件时,方法再次变为 OPTIONS 。
需要做什么(不知道如何做)
SAP需要在在线Web服务器上启用跨域资源共享。
或者有人需要建议我这样做的更好方法。
临时解决(错误做法)
我可以将方法选项替换为硬编码的"方法发布"。 但这是肮脏的讨厌的代码。
临时结论
作品:
- 通过Internet Explorer和简单的HTML文件发布到SAP后端
不起作用:
- 通过Firefox和Chrome通过简单的HTML文件发布到SAP后端
- 通过IE,FF和Chrome在本地SAP Eclipse Web服务器上发布到SAP后端。
- 通过IE,FF和Chrome在SAP Cloud Trial帐户上发布到SAP后端
有关CORS的详细信息:
我希望有人能帮助我,因为我花了很多时间来解决这个问题。
亲切的问候
Vincent
文森特,你好
由于您的IE设置(Internet选项->安全-> <选择您的区域>->自定义级别->其他->跨域访问数据源),您的编码可以在IE中使用。 如果激活它,您应该知道,跨源的所有请求都是允许的-我想那是您真正不想要的。 顺便说一句,选择"提示"选项并没有真正的帮助,因为IE不会告诉您哪个来源尝试将请求发送到哪个来源。 在IE(小于10)中,存在XDomainRequest对象,该对象实现了CORS(但与带有CORS的XMLHttpRequest相比,它具有许多限制)。
但是,由于当前大多数现有服务均不支持CORS,因此我建议配置/安装反向代理(Apache,SAP Web Dispatcher等),该代理将请求定向到正确的源(并模拟一个 浏览器的单一来源)。
我们目前正在开发《 End2End教程》的扩展 http://scn.sap.com/docs/DOC-33792 跨域主题。
Hth,伯恩哈德
假期后,我将继续进行此操作,因此请不要担心! ????
节日快乐!
我已经尝试过:
var invocation = new XMLHttpRequest(); var url =' http://delyo001.you .local:8000/sap/bc/youconsulting/ws/rest/anonymous/z_names_post'; var body ='
invocation.open('POST',url,true); invocation.setRequestHeader('X-PINGOTHER','pingpong'); invocation.setRequestHeader('Content-Type','application/xml'); invocation.send(body);
仅在IE中本地工作。
你好克里斯蒂安,
这将不起作用。
我需要用代理做些事情。
亲切的问候,
Vincent
嗨Vincent,
检查以下链接。
HTML5摇滚-使用CORS
http://www.html5rocks.com/en/tutorials/cors/?redirect_from_locale=en
预检请求:
希望有帮助。
此致
基督徒
嗨,
对于仍在寻找解决方案的您:
使用App Router解决CORS
或:使用代理服务器解决CORS
(在本地和云中运行)
干杯,
卡洛斯
一周热门 更多>