处理 GET 请求的 URI 保留字符
Handling URI reserved characters for GET requests
我正在从我的 angular 服务发出 GET 请求,方法是使用 encodeURIComponent
替换保留字符,以便它像
一样发送到 URL
http://localhost:4200/api/verifiers/https%3A%2F%2Fwww.web.com%2Fdev%2F0/services/xx%3Ayy%3AV00000000000000000000000000000000000000000000000000000000000000000000000000000000%23read-device
然而,当我的 FastAPI 后端收到请求时,它将显示 404 Not Found
错误,因为 %2F
等字符被识别为 /
,因此控制器无法解析 [=23] =] 与处理请求的方法有关。
例如上面的 URL 是从我的后端收到的
/verifiers/https%3A//www.web.com/dev/0/services/xx%3Ayy%3AV00000000000000000000000000000000000000000000000000000000000000000000000000000000%23read-device
前端使用encodeURIComponent ...后端使用decodeURIComponent解扰
通过在处理程序的 URL 路径中添加 :path
后缀解决
我正在从我的 angular 服务发出 GET 请求,方法是使用 encodeURIComponent
替换保留字符,以便它像
http://localhost:4200/api/verifiers/https%3A%2F%2Fwww.web.com%2Fdev%2F0/services/xx%3Ayy%3AV00000000000000000000000000000000000000000000000000000000000000000000000000000000%23read-device
然而,当我的 FastAPI 后端收到请求时,它将显示 404 Not Found
错误,因为 %2F
等字符被识别为 /
,因此控制器无法解析 [=23] =] 与处理请求的方法有关。
例如上面的 URL 是从我的后端收到的
/verifiers/https%3A//www.web.com/dev/0/services/xx%3Ayy%3AV00000000000000000000000000000000000000000000000000000000000000000000000000000000%23read-device
前端使用encodeURIComponent ...后端使用decodeURIComponent解扰
通过在处理程序的 URL 路径中添加 :path
后缀解决