2

在我的 chrome 扩展中,我称之为:

jsonPost = {
    email:"phil@demo.demo",
    password:"demo",
    content: $('#selected_text').val(), 
    notification_type: $('#notification_type').val(),
    name:$('#notification_name').val()
}

$.post('http://localhost:3000/api/create.json', jsonPost, 
        function (data) {
            console.log("type of data = " + typeof(data));
            console.log("data in function = " + data);
            }

数据进入服务器。但是响应丢失了,在控制台中---数据类型=字符串---函数中的数据=

所以由于某种原因,我没有得到回复。从浏览器工作。我什至尝试对 cnn.com 进行 get 操作,但没有得到任何回应。

有任何想法吗?

谢谢

4

3 回答 3

1

jQuery 将根据 MIME 类型和其他一些因素对如何解释数据进行“最佳猜测”,会不会猜错了?您可以通过在指定数据类型的调用中添加第四个参数来强制执行此操作——例如,“json”、“text”、“html”...文档上的完整列表。ajax

于 2010-04-20T13:39:51.457 回答
1

您需要使用 json 作为 post 类型,对于速记方法,像这样使用它

$.post(url, data, function(result) {

}, 'json');
于 2010-04-20T13:38:43.193 回答
1

您是否遇到跨站点脚本限制?如果它在“本地主机”上的页面中有效,但在扩展程序中无效,则可能需要请求 Chrome 的许可才能访问扩展程序默认安全上下文之外的内容。看看 Google 关于请求扩展的跨域权限的建议是否有帮助。

于 2010-04-20T13:47:02.187 回答