[英]JSON data is converting to encoded URL
我想直接在url中發送JSON對象。 就像是
https://example.com/api/{"node1":[{"id":"32","Title":"000w","type":"Final"}]}
但是當我創建請求時,它將這個URL轉換為
https%3A%2F%2Fdomain.com%2Fapi%2F%7B%22node1%22%3A%5B%7B%22id%22%3A%2232%22%2C%22Title%22%3A%22000w%22%2C%22type%22%3A%22Final%22%7D%5D%7D
我不想像我想通過第一種方式擊中服務器那樣通過。
如果您確實想在URL中發送大量JSON,則應該對其進行字符串化和編碼:
var yourObject = {"node1":[{"id":"32","Title":"000w","type":"Final"}]};
var encoded = window.btoa(JSON.stringify(yourObject));
console.log(encoded);
給出:
"eyJub2RlMSI6W3siaWQiOiIzMiIsIlRpdGxlIjoiMDAwdyIsInR5cGUiOiJGaW5hbCJ9XX0="
要將對象放回另一端,可以執行以下操作:
JSON.parse(atob("eyJub2RlMSI6W3siaWQiOiIzMiIsIlRpdGxlIjoiMDAwdyIsInR5cGUiOiJGaW5hbCJ9XX0="))
要么
要解碼您在問題中最終得到的結果,請使用decodeURIComponent
:
var theString = 'https%3A%2F%2Fexample.com%2Fapi%2F%7B%22node1%22%3A%5B%7B%22id%22%3A%2232%22%2C%22Title%22%3A%22000w%22%2C%22type%22%3A%22Final%22%7D%5D%7D';
decodeURIComponent(theString);
還給您:
https://example.com/api/{"node1":[{"id":"32","Title":"000w","type":"Final"}]}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.