2

我整天工作时都陷入这种情况:(。请帮助我。

我有网站需要使用 $http 提供程序从其他域调用 ColdFusion 文件。假设这是 cfm 文件的链接:http://xample.com/getStockCodesTest.cfm


这可能是 ColdFusion 文件的示例:

<cfcontent
type="application/json"
/>
{
    "items": [
        {
            "StockCode" : { "col": "Stock Code", "value": "0231" },
            "Qty" : { "col": "Qty", "value": "DS" },
            "QtyOn" : { "col": "Qty On", "value": "Branch" },
            "QtyVal" : { "col": "Qty Val", "value": "200" },
            "ReleasedDate" : { "col": "Released Date", "value": "0" },
            "S" : { "col": "S", "value": "0" },
            "Description" : { "col": "Description", "value": "adfasdf" },
        }
    ]
}

这是角码(我用coffeescript来写)

ajax = $http {
        url: 'http://xample.com/getStockCodesTest.cfm'
        method: 'JSONP'
        params: {
            callback: "JSON_CALLBACK"
        }
    }
    ajax.success (data, status, headers, config) ->
        console.log data

但是当检查萤火虫时。它总是返回错误:

在此处输入图像描述

那么我怎样才能有一个正确的方法来编写一个像这样的内容 json 的测试 ColdFusion 并使用 angularjs 来进入我的网络:(

4

2 回答 2

4

我不确定你在问什么。但我可以告诉你,你收到错误是因为你的 JSON 无效。

在此处输入图像描述

那个逗号,就在那里,删除它。它会导致无效的 JSON。

于 2013-06-04T14:24:38.453 回答
2

当从 AngularJS 进行 JSONP 调用时,您必须使用输入函数名称包装 JSON。这就是您看到错误的原因。

JSONP 响应示例:

      /xxx.cfm?_jsonp=angular.callbacks._0 --- request

      //expected response is like this - a function from your coldfusion
      angular.callbacks._0([{"StockCode" : { "col":...

然后它将起作用。

于 2013-06-04T14:27:38.607 回答