相关疑难解决方法(0)

JSON响应中的非法字符

我有一个Sencha Touch应用程序.我有一个商店使用ajax代理和json阅读器.从我的sinatra应用程序返回的JSON中的一些字符串偶尔会包含这个字符:http: //www.fileformat.info/info/unicode/char/2028/index.htm

虽然它是不可见的,但是字符在这里的第二个字符串中出现两次,在句点和结尾引号之间:

"description": "Each of the levels requires logic, skill, and brute force to crush the enemy.??"
Run Code Online (Sandbox Code Playgroud)

尝试复制并粘贴"每个级别需要逻辑,技能和蛮力来粉碎敌人."进入你的javascript控制台!它不会被解析为字符串,并且失败了SyntaxError: Unexpected token ILLEGAL.

这会导致JSON响应失败.我已经被困在这个很长一段时间了!有什么建议?

javascript unicode json utf-8

13
推荐指数
1
解决办法
1万
查看次数

使用Rails在视图中打印有效的,非转义的JSON

我已经尝试了一切.帮助者的每个组合raw,html_safe to_json包括与::JSON.encode和的一些尝试CGI.unescape.问题在于,无论我做什么,我都无法在视图中打印格式良好的JSON.它始终是HTML转义的.

这是我视图中的代码:

var campaignData<%= "=" + (raw @campaign.to_json) if @campaign %>;

就我而言,它始终是被引用的引号".我只会对引号做一个gsub,但这对于IMO应该是一个非常简单,记录良好的用例来说是一个可怕的解决方案.

javascript json ruby-on-rails ruby-on-rails-3.2

12
推荐指数
3
解决办法
2万
查看次数

使用jQuery,从跨域url访问json,其中json可能形成不佳

我正在使用jQuery的ajax函数来访问跨域url.该网址将返回json.我正处于发现阶段,但我想,因为json值包含几个'"'字符串,json eval会抛出错误并停止执行我的客户端脚本.我得到的错误是"未终止的字符串文字".我知道如果我将返回的json硬编码放在本地div中并删除'"' 字符串(和几个隐藏的特殊字符),我可以成功地获得json到eval.无论是通过解决方法还是通过修改我的代码,我可以做些什么来从URL获取json并将其存储在我的客户端javascript中作为有效的json对象?

我目前的代码.没有定义的函数(success,complete,error,dataFilter)执行:

$(function() {
  $.ajax({
  url: "http://www.codemash.org/rest/sessions.json?format=jsonp&callback=?", 
  dataType: "jsonp",
  success: successFunc,
  complete: completeFunc,
  error: errorFunc,
  dataFilter: dataFilterFunc
});

});

function successFunc() { console.log('successFunc(). enter.'); }
function completeFunc() { console.log('complete(). enter.'); }
function errorFunc() { console.log('errorFunc(). enter.'); }
function dataFilterFunc(data, type) { 
  data.replace(/\W/g, ' ');
  return data; 
}
Run Code Online (Sandbox Code Playgroud)

javascript jquery json jsonp

5
推荐指数
1
解决办法
3407
查看次数

Text encoding problems in JSON.stringified() object

I have a index.html with a which sends a text to a PHP code. This PHP sends it again by POST (curl) to a Node.js server, inserted in a JSON message (utf8-encoded)

//Node.js server file (app.js) -- gets the json and shows it in a <script> to save it in client JS
render(index, {json:{string:"mystring"}})

//Template to render (index.ejs)
var data = <%=JSON.stringify(json)%>;
Run Code Online (Sandbox Code Playgroud)

So that I can pass those variables in the JSON to data. JSON is way bigger than here, …

unicode json utf-8 ejs node.js

1
推荐指数
1
解决办法
5860
查看次数