【问题标题】:apiSearch method of ShopSense API using jQuery.getJSON使用 jQuery.getJSON 的 ShopSense API 的 apiSearch 方法
【发布时间】:2012-04-11 15:05:08
【问题描述】:

我正在尝试使用 jQuery.getJSON 调用 ShopSense API (https://shopsense.shopstyle.com/shopsense/7268009frtd4rf) 的 apiSearch 方法,下面是代码。

$(document).ready( function() {
$.getJSON("http://api.shopstyle.com/action/apiSearch?jsoncallback=?",
    {
        pid: "uid3489-4324817-25",
        fts:"red+dress",
        min: 0,
        count: 10,
        format : "json"
    }, function(data) {
        console.log(data);
        $.each(data.products, function(i, product) {
            alert(product.name);
        });
    });
});

它会在 chrome 中导致错误“Uncaught SyntaxError: Unexpected token :”,在 firebug 中导致“invalid label”。

显然,这似乎是解析错误,但是当我尝试使用 jQuery.parseJSON 方法解析其响应 JSON 时,解析没有问题。

请帮我解决这个问题。

解决方案:

最后我通过更改查询中的几个参数来运行我的代码。

使用回调=? jsoncallback=?

格式 = jsonp

【问题讨论】:

    标签: jquery shopping


    【解决方案1】:

    正确的网址是:

    http://api.shopstyle.com/action/apiSearch
    

    不是:

    http://api.shopstyle.com/action/apiSearch?jsoncallback=?
    

    带有 GET 值的有效 url 采用模式:

    protocol://host/path/file.extension?var1=value1&var2=value2 ... varn=valuen
    

    你不能使用双重?

    【讨论】:

    • URL没有问题,它的JSONP回调要求根据jQuery文档。如果我省略 jsoncallback=?它引发错误的一部分 - XMLHttpRequest 无法加载api.shopstyle.com/action/…。 Access-Control-Allow-Origin 不允许 Origin null。 - 实际上它的 jQuery 要求,否则你是对的。不工作...
    【解决方案2】:

    最后我通过更改查询中的几个参数来运行我的代码。

    1. 使用回调=? jsoncallback=?

    2. 格式 = jsonp

    一切正常。

    $(document).ready( function() {
    $.getJSON("http://api.shopstyle.com/action/apiSearch?callback=?",
        {
            pid: "uid3489-4324817-25",
            fts:"red+dress",
            min: 0,
            count: 20,
            format : "jsonp"
        }, function(data) {         
            $.each(data.products, function(i, product) {
                alert(product.name);
        });
    });
    

    感谢您的帮助和时间。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-04-17
      • 2016-01-13
      • 1970-01-01
      • 2016-07-31
      • 2011-02-06
      • 2010-12-11
      • 2011-04-12
      相关资源
      最近更新 更多