【问题标题】:WCF Service with JSONP response jQuery problems带有 JSONP 响应 jQuery 问题的 WCF 服务
【发布时间】:2011-09-24 01:13:46
【问题描述】:

我是 JSONP 和 Ajax/JQuery 的新手。我到处寻找答案,但找不到任何答案。

我有一个启用了 WebScriptEnablingBehavior 的 WebHTTPBinding 的自托管 WCF 服务设置。我的服务正在运行,我可以转到我的 url "http://e-invizion:8801/csecontrol/v1/GetTestString" 并且 Firefox 提示下载文件,所以我在记事本中打开该文件,内容是 "{"d":"6/28/2011 12:10: 23 AM"}" 这只是从服务器以字符串形式返回的当前日期和时间。所以这似乎工作正常。

如果我这样查询:

$.ajax({
    url: "http://e-invizion:8801/csecontrol/v1/GetTestString&callback=?",
    dataType: "jsonp",
    type: "GET",
    cache: false
    },
    function(data){
        console.log(data);
    });    

这会被提取到页面的头部,每次按下按钮都会有一个新的:

<script async="" src="http://e-invizion:8801/csecontrol/v1/GetTestString&
callback=jQuery16102834440269703241_1309242056366?_=1309242057876">
<HTML><HEAD><STYLE>snip...</STYLE>
<TITLE>Service</TITLE></HEAD><BODY>
<DIV id="content">
<P class="heading1">Service</P>
<BR/>
<P class="intro">Endpoint not found.</P>
</DIV>
</BODY></HTML>
</script>

如果我这样查询:

$.getJSON("http://e-invizion:8801/csecontrol/v1/GetTestString?callback=?", getNowPlayingResponse);

我在 Firebug 控制台中得到了这个:

invalid label
    {"d":"6\/28\/2011 1:23:21 AM"}

我正在尝试让这个回调为 JSONP 工作,但我对我缺少的东西一无所知。

【问题讨论】:

    标签: jquery ajax wcf json jsonp


    【解决方案1】:

    好像你的网址是错误的

    $.ajax({
        url: "http://e-invizion:8801/csecontrol/v1/GetTestString?callback=?",
        dataType: "jsonp",
        type: "GET",
        cache: false
        },
        function(data){
            console.log(data);
        });    
    

    我将GetTestString&amp;callback... 更改为GetTestString?callback... 希望这是问题

    【讨论】:

    • 感谢您发现这一点,我确实错了。现在这两种方法都告诉我“无效标签”,我不知道如何解决。可能必须创建一个新问题,因为这个问题由单个字符解决:)
    猜你喜欢
    • 2012-04-19
    • 1970-01-01
    • 2014-08-20
    • 1970-01-01
    • 2015-04-21
    • 2013-03-08
    • 1970-01-01
    • 1970-01-01
    • 2023-04-11
    相关资源
    最近更新 更多