0

抱歉在我的第一个版本的帖子中不够精确/这是一个带有示例代码的更新帖子

我正在使用 jquery 1.6.4 和 jquery mobile 1.0rc2/我首先必须承认我对 jquery mobile 比较陌生/我构建了几个网络应用程序,它们运行时没有更大的问题/突然从一秒到下一秒我的几个应用程序损坏/仔细查看问题显示,所有应用程序从我通过 ajax jsonp 请求检索的 api 摄取 json/get url 在 ? 之后包含 2 个参数。?auth_token 和 meta_prefix(加上自动生成的 jquery 回调参数)/问题似乎是 jquery 不再传递第二个参数/它只是在发送请求之前将其删除/对于所有损坏的 web 应用程序都是如此/有任何人想法可能发生了什么变化?

请求中的 url 看起来像这样: http://myURL?auth_token=myToken&meta_prefix=m_ 但是发送的 url 看起来像这样: http://myURL?auth_token=myToken&callback=jQuery16308668286966791752_1322474687995

奇怪的是,当我将参数名称更改为 metaprefix 而不是 meta_prefix 它发送它但是这次将参数放在回调之后。这里发生了什么?

任何帮助是极大的赞赏

下面是我用于通话的代码

$(function(){
    $.ajax({
        url: 'http://myURL?auth_token=myToken&meta_prefix=m_',
        dataType: 'jsonp',
        cache: true, // i need this to be set to true because otherwise jquery adds a cache parameter which the api i am using has problems with
        success: function(data){
            console.log(data);
            $('#list1').append('<ul data-role="listview"></ul>');
            listItems = $('#list1').find('ul');
            $.each(data, function(key) {
                html += '<p>From: '+data.array[key].m_total_resources+'</p>';
                listItems.append('<li>'+html+'</li>');
            });
            // Need to refresh list after AJAX call
            $('#list1 ul').listview();
        }
    });
})

我在这个问题上玩了一点,我发现使用另一个 api 只是为了测试,例如苹果搜索 api http://itunes.apple.com/lookup?id=909253&entity=album 我不能复制第二个参数问题/可能是我缺乏理解,但api可以在这个错误中发挥作用吗?或者参数附加到的url?如果我将 url 放在浏览器中,我会得到我期望的响应;令人沮丧的是,前天一切正常

干杯

麦克斯

4

1 回答 1

0

很抱歉给您带来不便,但我不知道我已经创建了两个帐户/我上面报告的问题已解决/这确实是 api 的问题/他们说他们实现了一些 ajax 函数,这些函数阻止了 api 响应某些参数/老实说,我对此有点困惑/我认为在firefox的实时httpheaders插件中可以看到的是显示实际已发送的get请求/但是根据我遇到的问题,它似乎更多它已发送的响应 api 内容/以任何方式正确吗?

于 2011-11-29T19:16:51.523 回答