- 时间:2022-06-24 00:22 编辑: 来源: 阅读:
- 扫一扫,手机访问
摘要:Ajax请求WebService跨域问题的解决方案
[b]1、背景[/b]
用Jquery中Ajax方式在asp.net开发环境中WebService接口的调用
[b]2、出现的问题[/b]
[img]http://files.jb51.net/file_images/article/201610/2016101717070946.png[/img]
原因分析:浏览器同源策略的影响(即JavaScript或Cookie只能访问同域下的内容);
[b]3、解决方案:[/b]
(1) JSONP:只支持GET方式
(2) CROS:跨域资源共享
[b]以下为CROS解决方案:[/b]
a.在WebService接口加上响应头信息:
[img]http://files.jb51.net/file_images/article/201610/2016101717070947.png[/img]
b.在web.config文件中加上相关配置节信息:
[img]http://files.jb51.net/file_images/article/201610/2016101717070948.png[/img]
运用a或者b的解决方案后,浏览器头信息中变动如下:
[img]http://files.jb51.net/file_images/article/201610/2016101717070949.png[/img]
最终问题得以较好的解决,但对于此方案各个浏览器支持情况不同,附图如下:
[img]http://files.jb51.net/file_images/article/201610/2016101717071050.png[/img]
以上所述是小编给大家介绍的Ajax请求WebService跨域问题的解决方案,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对编程素材网网站的支持!