我设置了一个 HTML 和 JavaScript 文件来从启用 JSONP 的 Web 服务中检索数据。我的问题是,当我将 html 和 .js 文件部署到运行服务的目录时,它会正常执行,但是如果我尝试从另一台主机运行 html 和 .js 文件,则请求不会发送到Web 服务和 java 脚本给了我一个服务器 500 错误。
我正在使用 Chrome 的开发人员工具查看 xmlhttprequest 调用,这是我知道我收到 500 错误的唯一原因。
我已经做了很多研究,发现我需要将脚本方法标记设置为响应类型设置为 json 并将 usehttpget 设置为 true,我已经完成了这两件事并尝试设置如另一篇文章所述,项目中的 clientaccesspolicy.xml 。一切都无济于事。
我确定这是 Web 服务或 IIS 端的配置问题,因为当我将 html 和 javascript 文件放在代码目录中并通过 IDE 运行 Web 服务时,我可以使用该 html 实例来调用网络服务,我的反应很好。但如果 html 和 javascript 不在正在运行的代码的工作目录中,我会收到服务器错误 500。
如何解决?
编辑 我还发现一个帖子说 500 错误是基于请求大小所以我添加 < jsonSerialization maxJsonLength="5000000" /> 到我的 web.config 没有帮助。