攻击 - 将 URL 中的反斜杠 (\) 作为值传递

Attask - Pass backslash (\) in URL as value

我正在尝试传递其中包含反斜杠(“\”)的一组值。这打破了 URL。我提交的URL是https://{mycompany}.attasksandbox.com/attask/api/project?ID=57ba84---1&updates={"description":"ToImplementWorkFront","URL":"T:%5CTechnologyWorkRequests%5C2016%5CTAD160888_Communications"}&apiKey=g--t&method=put

我基本上想将值传递给 URL 字段作为 "URL": "T:\TechnologyWorkRequests16\TAD160888_Communications"

我知道反斜杠是不安全的字符,因此编码为 %5C 和 %255C- 但我收到 JSON 解析错误。 我可以传递 正斜杠 (/) 将其编码为 %2F,但我无法传递“\”字符。任何人都可以帮忙吗?提前致谢!

对于此类任务,您应该使用 POST 而不是 GET 方法。 如果您仍想使用 GET,您可以执行以下示例:

"https://posturl/?update=" + encodeURIComponent("{ \"path\": \"C:\Windows\System32\"}")

更安全:

var data = {
    "path": "C:\Windows\System32\"
}
var url = "https://posturl/?update=" + encodeURIComponent(JSON.stringify(data))