首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >JSONP可以在jQuery中工作,但不能在mootools中工作

JSONP可以在jQuery中工作,但不能在mootools中工作
EN

Stack Overflow用户
提问于 2011-04-12 00:41:42
回答 3查看 1K关注 0票数 1

我正在尝试将我的代码转换为Mootools (我更喜欢编码范例)。

我正在做跨域AJAX,其中我拥有这两个域(封闭网络)。我只是从我的服务器请求简单的JSON。我在Mootools (jQuery Works)中看到以下错误:

Resource interpreted as Script but transferred with MIME type text/plain. Uncaught SyntaxError: Unexpected token :

var url = http://localhost:3000/

服务器:

代码语言:javascript
运行
AI代码解释
复制
var http = require('http'),
    json = {"hi" : false};

http.createServer(function(req, res) {
    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.end(JSON.stringify(json));
}).listen(3000, function() {
    console.log("Server on " + 3000);
});

jQuery:

代码语言:javascript
运行
AI代码解释
复制
$.ajax({
    url: url,
    type: "GET",
    dataType: 'json',
    success: function (data) {
    }
});

Mootools:

代码语言:javascript
运行
AI代码解释
复制
var myRequest = new Request.JSONP({
    url: url,
    onComplete: function (data) {
        alert(JSON.stringify(data));
    }
});
myRequest.send();

我已经尝试添加这些头文件,但都没有用:

代码语言:javascript
运行
AI代码解释
复制
'Accept': 'application/json',
'Content-Type': 'application/json'

这似乎是客户端的事情,而不是服务器端的事情,因为它在jQuery中工作。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-04-12 06:18:09

URL是什么样子的?jQuery通过在url中添加?callback=?foo=来判断这是一个JSONP请求。Request.JSONP改为使用选项callbackKey

JSONP (在任何库中)都没有method选项,因为它只是注入了一个脚本标记。

代码语言:javascript
运行
AI代码解释
复制
var myRequest = new Request.JSONP({
  url: url,
  callbackKey: 'callback'
  onComplete: function(data){}
}).send();

但是,我有一种感觉,您使用的不是JSONP,而是带有JSON的XHR。如果是这种情况,请使用Request.JSON,而不是Request.JSONP

编辑

从这个答案的注释中可以看出,您没有使用JSONP,所以只需执行以下操作:

代码语言:javascript
运行
AI代码解释
复制
new Request.JSON({
  url: url,
  method: 'get',
  onSuccess: function (data){
    console.log(data)
  }
}).send()

编辑2

要更改请求头,只需将它们添加为一个选项:

代码语言:javascript
运行
AI代码解释
复制
new Request.JSON({
  headers: {
    'X-Requested-With': 'XMLHttpRequest',
    'Accept': 'text/javascript, text/html, application/xml, text/xml, */*'
  },
  url: url,
  method: 'get',
  onSuccess: function (data){
    console.log(data)
  }
}).send()
票数 3
EN

Stack Overflow用户

发布于 2011-04-12 06:01:54

您的代码中存在语法错误。

代码语言:javascript
运行
AI代码解释
复制
var myRequest = new Request.JSONP({
    url: url,
    method: 'get',
    onComplete: function(data){}
});
myRequest.send();

同样,响应应该用回调函数包装,例如:http://jsfiddle.net/zalun/yVbYQ/

票数 1
EN

Stack Overflow用户

发布于 2015-04-20 05:40:47

您的ajax调用应该如下所示

代码语言:javascript
运行
AI代码解释
复制
          $.ajax({
                type: "GET",
                url: "http://localhost:17370/SampleService.asmx/HelloWorld",
                data: "{}",
                crossDomain: true,
                contentType: "application/json; charset=utf-8",
                dataType: "jsonp",
               async:false,
                success:function(data,status){
                    alert(data);

                },
                error: function (XMLHttpRequest, textStatus, errorThrown) {
                    alert("Error Occured!" + " | " +
                    XMLHttpRequest + " | " + textStatus + " | " +
                    errorThrown);
                }
            });

你的服务器端方法不应该返回简单的字符串,它应该返回jsonp格式的响应,你需要关注这个博客:

http://msrtechnical.blogspot.in/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5629137

复制
相关文章
Firebase 如何创建登录 Token
Firebase 的 token 可以使用 firebase 命令行工具来进行创建。
HoneyMoose
2021/04/02
2.5K0
Firebase 如何创建登录 Token
MySQL创建计算字段及基本函数
select concat(vend_name,'(',vend_country,')') from vendors order by vend_name;
小末快跑
2019/07/03
1.9K0
第十章:创建计算字段
本文介绍了如何创建计算字段,包括拼接字段、使用别名、执行算数计算等。
用户1134788
2018/01/05
6240
如何在Python中创建AGE计算器Web App PyWebIO?
为了计算此 Web 应用程序的日期,我们将默认使用 Python 附带的日期时间包。该软件需要用户的姓名和出生日期,然后使用当前日期计算他们的年龄(以年为单位)。输出将使用 PyWebIO 的输出例程显示在网页上。
很酷的站长
2023/08/11
2940
如何在Python中创建AGE计算器Web App PyWebIO?
在Oracle中创建自动增长字段
Oracle在创建表时和其他的数据库有点不一样,MySQL中可以使用“auto_increment”即可。但是Oracle有点麻烦,需要使用序列和触发器达到目的。
星哥玩云
2022/08/17
3.1K0
在Oracle中创建自动增长字段
firebase怎么用_firebase是什么
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/168361.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/20
4.3K0
firebase怎么用_firebase是什么
第7课 创建计算字段拼接字段执行简单的算术运算
什么是计算字段? 就是直接从数据库中检索出转换,计算或者格式化的数据,而不是检索出数据之后,再在客户端应用程序中重新格式化。
desperate633
2018/08/22
6780
如何在js中创建对象
七夕临近了,没有对象的来创建一个吧 使用对象字面量: const o = { name: "zehan", greeting() { return `Hi, 我是${this.name}`; } }; o.greeting(); // "Hi, zehan" 使用构造函数: function Person(name) { this.name = name; } Person.prototype.greeting = function () { return `Hi, 我是
ZEHAN
2020/09/23
7.8K0
如何在Mac中创建MiniKube
Minikube是一个工具,可以在本地轻松运行Kubernetes。 Minikube在笔记本电脑的VM中运行单节点Kubernetes集群,供希望尝试Kubernetes或日常开发的用户使用。
方志朋
2022/05/08
2.5K0
如何在Mac中创建MiniKube
如何在Dynamo中创建UI
本文介绍了如何在Dynamo中创建UI,通过使用WPF技术实现了窗口的创建和交互。首先介绍了IronPython和Dynamo的基础知识,然后讲解了实现原理和准备工作。最后通过具体的操作步骤和代码示例讲解了如何在Dynamo中创建UI。
企鹅号小编
2018/01/05
2.2K0
如何在Dynamo中创建UI
07-08 创建计算字段使用函数处理数据第7章 创建计算字段第8章 使用函数处理数据
上述例子中,存储在表中的数据都不是应用程序所需要的。我们需要直接从数据库中检索出转换、计算或格式化过的数据,而不是检索出数据,然后再在客户端应用程序中重新格式化。
用户1250179
2018/08/02
3.8K0
07-08 创建计算字段使用函数处理数据第7章 创建计算字段第8章 使用函数处理数据
如何在 WordPress 中创建联系表格?
假设我们有一个 WordPress 网站,并且我们想要添加一个功能,让他们可以联系他们所拥有的查询。我们可以通过使用网站上的 WordPress 插件添加联系表格来做到这一点。因此,这将为你的访问者提供一种与你联系的方式,当他们需要帮助或有什么要分享的时候。
海拥
2022/12/19
3K0
如何在 WordPress 中创建联系表格?
如何在 WordPress 中创建登录页面
登陆页面: 登陆页面是为特定受众制定的具有特定目标的目标页面,可以描述为“一页一目的”。登陆页面必须有一个“号召性用语”,并牢记特定目标。成功的着陆页是具有更高转化率、更高参与度和更高质量潜在客户的页面。
海拥
2022/10/04
3K0
如何在 WordPress 中创建登录页面
如何在git中创建新分支
介绍 Git 是一个开源版本控制系统,用于在软件开发过程中跟踪更改。它的相互独立的分支模型使其脱颖而出。分支可以基于以前版本的软件来保持当前进度的完整性,同时处理错误修复或新功能。 在本地创建 Git 存储库 要创建新的 Git 存储库,请在终端中输入以下命令: mkdir rumenz cd rumenz git init 这将在 rumenz 目录中创建并初始化一个新的 Git 存储库。创建一个新的降价文件并添加一行文本: echo This is a line of text > rumenz.md
入门笔记
2022/06/02
3K0
如何在 SwiftUI 中创建条形图
条形图以矩形条的形式呈现数据的类别,其宽度和高度与它们表示的值成比例。本文将展示如何创建一个垂直条形图,其中矩形的高度将代表每个类别的值。
Swift社区
2022/12/12
5.4K0
如何在 SwiftUI 中创建条形图
如何在R中创建日历热图
首先,我们运行Paul Bleicher创建的calendarHeat函数以显示日历热图。 其次,我们创建一些随机的时间序列数据。 最后,我们在两个调色板中绘制时间序列。
用户1359560
2020/04/01
4.6K0
如何在R中创建日历热图
点击加载更多

相似问题

如何在Tableau中创建计算字段?

12

如何在mysql中创建计算字段?

23

如何在firebase中创建必需的字段验证

11

创建输入字段,如Google

12

如何在opentaps/OFBiz中创建计算字段?

12
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档