当前位置: 首页 > 面试题库 >

发送JSONP与JSON数据?

宗政法
2023-03-14
问题内容

我正在制作一个需要以JSONP格式返回数据的Web服务。我正在使用JSP的JSON标记库,我以为所有必须添加的都是括号,但是我找不到一个很好的资源来验证这一点。

例如,曾经的Web服务功能都使用以下功能返回:

private static String getJSONPObject(String s) throws JSONException {
    return "(" + new JSONObject(s) + ")";
}

这样对吗?

谢谢!


问题答案:

JSONP只是一种黑客,它允许Web应用程序跨域检索数据。可以说它违反了同源起源策略(SOP)。它的工作方式是使用Javascript将“
script”元素插入页面。因此,您需要一个回调函数。如果您没有,则您的Javascript将无法访问JSON对象。但是,通过使用JSONP,您的Javascript代码可以调用回调函数。

因此,您必须指定回调名称。因此,您的函数可能如下所示:

private static String getJSONPObject(String callback, String s) throws JSONException {
    return callback + "(" + new JSONObject(s) + ")";
}


 类似资料:
  • 问题内容: 我正在制作一个需要以JSONP格式返回数据的Web服务。我正在使用JSP的JSON标记库,我以为所有必须添加的都是括号,但是我找不到一个很好的资源来验证这一点。 例如,曾经的Web服务功能都使用以下功能返回: 这样对吗? 谢谢! 问题答案: JSONP只是一种黑客,它允许Web应用程序跨域检索数据。可以说它违反了同源起源策略(SOP)。它的工作方式是使用Javascript将“ scr

  • 问题内容: 为什么在下面的代码中将数据发送为JSON格式而不是? 问题答案: 因为您既未指定请求内容类型,也未指定正确的JSON请求。这是发送JSON请求的正确方法: 注意事项: 使用此方法将javascript对象转换为本地和内置于现代浏览器中的JSON字符串。如果要支持较旧的浏览器,则可能需要包含json2.js 使用属性指定请求内容类型,以便向服务器指示发送JSON请求的意图 该属性用于服务

  • 本文向大家介绍关于JSON与JSONP简单总结,包括了关于JSON与JSONP简单总结的使用技巧和注意事项,需要的朋友参考一下 一、什么是json JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。 易于人阅读和编写。同时也易于机器解析和生成。 它基于JavaScript Programming Language, Standard ECMA-262 3

  • 本文向大家介绍json与jsonp知识小结(推荐),包括了json与jsonp知识小结(推荐)的使用技巧和注意事项,需要的朋友参考一下 json 1. json 的值可以是下面这些类型: ① 数字(整数或浮点数),比如123,1.23 ② 字符串(在双引号中) ③ 逻辑值(true 或 false) ④ 数组(在方括号中) ⑤ 对象(在花括号中) ⑥ null 2. json解析方法 ① eval

  • 问题内容: 是否可以将数据发布到JsonP?还是所有数据都必须作为GET请求传递到查询字符串中? 我有很多数据需要跨域发送到服务,并且太大,无法通过查询字符串发送 解决这个问题有哪些选择? 问题答案: 由于同一个原始策略的(相当明智的)限制,因此无法与另一个域上的服务进行异步。JSON- P之所以起作用,是因为允许您将标签插入DOM,并且它们可以指向任何地方。 当然,您可以使用常规形式的POST来

  • beego 当初设计的时候就考虑了 API 功能的设计,而我们在设计 API 的时候经常是输出 JSON 或者 XML 数据,那么 beego 提供了这样的方式直接输出: 注意 struct 属性应该 为 exported Identifier 首字母应该大写 JSON 数据直接输出: func (this *AddController) Get() { mystruct := {