Ajax Coldfusion cfc返回json数据错误和问题
我有两台服务器,开发和生产,都运行IIS7和Coldfusion 8标准 然而,在生产过程中,整个网站都在ssl上,除了登录之外的所有页面都是ssl 我在做一个半coldfusion/ajax支持的站点搜索 在我们的开发服务器上,一切都运行得很顺利,当我转到生产环境时,我开始出现一些非常奇怪的错误 比如数据没有返回json格式的数据,即使returntype=json,我在返回数据的数组周围序列化了json 然后,当我尝试删除returntype=json时,它总是说无效令牌 当调用ajax时,它确保指定json的数据类型,并在url(比如json)中返回格式。所有这些都可以在我们的开发服务器上正常工作,但是ajax部分拒绝在生产环境中工作 起初我认为这是因为存在ssl问题,如果ajax url是ssl,那么它会错误地表示访问源相同源策略,因此我将ajax url更改为非ssl,然后它会执行以下操作:返回的数据不是json,或者它表示无效令牌 在我的cfc中,我有一个主cfc,它获取我需要的所有数据,以我需要的各种方式格式化,然后将这些结果放入数组中的不同位置 那就跑吧 我已经尝试在cffunction命令中删除returntype=json,当我尝试直接在url中查看cfc时,这似乎起到了作用。但是当ajax调用它时,要么它说无效令牌 当我在dev上运行相同的代码时,没有错误,所有ajax都能100%工作 对这个问题有什么建议吗Ajax Coldfusion cfc返回json数据错误和问题,ajax,jquery,coldfusion,coldfusion-8,Ajax,Jquery,Coldfusion,Coldfusion 8,我有两台服务器,开发和生产,都运行IIS7和Coldfusion 8标准 然而,在生产过程中,整个网站都在ssl上,除了登录之外的所有页面都是ssl 我在做一个半coldfusion/ajax支持的站点搜索 在我们的开发服务器上,一切都运行得很顺利,当我转到生产环境时,我开始出现一些非常奇怪的错误 比如数据没有返回json格式的数据,即使returntype=json,我在返回数据的数组周围序列化了json 然后,当我尝试删除returntype=json时,它总是说无效令牌 当调用ajax时,
很显然,在我从ajax请求中删除了数据类型:“json”之后,它就开始工作了 亲爱的妈妈。我想知道为什么在制作和开发上会如此奇怪
谢谢。我想我知道这个问题,几年前我遇到过这个问题。您必须在返回JSON之前返回正确的头。在开始输出任何内容之前,请尝试以下方法之一:
<cfcontent type="application/json; charset=utf-8">
这样,jQuery将能够正确地将其标识为从服务器返回的JSON。如果您告诉jQuery需要json,而服务器不发送此标头,有时会有点困惑:/
希望这有帮助