javascript - 如何从ajax响应中解码url?

标签 javascript jquery ecmascript-6 html

token.php 里面我有这段代码:

$url = file_get_contents($urlPost);
preg_match('/\"amplem\":"(.*)\",/', $url, $matches);
echo $matches[1];

echo $matches[1] 将打印出如下所示的 url:

https://example.com/?id\u003dg596c2f91a67e518\u0026itag\u003d18\u0026source\u003dtest

index.php 上我做了一个 ajax 调用:

$.ajax({
  type:'post',
  url:siteURL+'/token.php',
  data:{token:token},
  success:function(data){
    var i = decodeURIComponent(data);
    console.log(i);
  }
})

console.log(i) 的当前结果:

https://example.com/?id\u003dg596c2f91a67e518\u0026itag\u003d18\u0026source\u003dtest

console.log(i) 的预期结果:

https://example.com/?id=g596c2f91a67e518&itag=18&source=test

编辑 - 如果我将编码后的 url 直接放在 decodeURIComponent(); 中,我会得到所需的结果,但它不适用于从 ajax 返回的 url打电话。

最佳答案

unescapeJSON.stringify 一起使用:

var i = "https://example.com/?id\u003dg596c2f91a67e518\u0026itag\u003d18\u0026source\u003dtest";

console.log(unescape(JSON.stringify(i)));

关于javascript - 如何从ajax响应中解码url?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54797755/

相关文章:

javascript - Prototype - 形成原型(prototype)监听器和 dom 监听器的集合

javascript - 火狐扩展。如何从控制台访问 "browser"命名空间?

javascript - 检测何时将noVolume选项与jPlayer一起使用

jquery - 如果为空,如何发布空的 <select .. multiple> HTML 元素?

jquery 父、子的简写

javascript - 条件对象属性的流类型问题

javascript - 错误 : [vuex] expects string as the type, 但发现未定义

javascript - Electron js右键单击,如果已进行选择,则可以执行 “Copy”和 “Cut”,如果光标位于输入字段中,则可以执行 “Paste”

javascript - 更改 URL 中断滚动

json - 将 JSON 数据导入到 REACTJS 中的数组中