在凭据中的用户名中包含“@” URL 基本身份验证
Having "@" in username in credentials URL Basic authentication
我正在尝试使用 Stripe webhook 调用 API 以将事件推送到 API。据我了解,stripe 有一种使用 https://{username}:{password}@myAPI.com 为 webhook 添加基本身份验证的方法,然后 base64 将用户名和密码编码为基本 {based64encodedToken} 到端点https://myAPI.com
但是,基本认证的用户名中包含“@”,例如:user1@myapp-1awjn。这会弄乱 API。有人知道如何逃脱吗?
根据 spec.
,您在 URI 的 authority
部分中描述的 userinfo
不是有效形式
The user information, if present, is followed by a commercial
at-sign ("@") that delimits it from the host.
如果你需要这个,你需要URL编码@
并在你的系统中解析,例如https://user%40cool@example.com/
我正在尝试使用 Stripe webhook 调用 API 以将事件推送到 API。据我了解,stripe 有一种使用 https://{username}:{password}@myAPI.com 为 webhook 添加基本身份验证的方法,然后 base64 将用户名和密码编码为基本 {based64encodedToken} 到端点https://myAPI.com
但是,基本认证的用户名中包含“@”,例如:user1@myapp-1awjn。这会弄乱 API。有人知道如何逃脱吗?
根据 spec.
,您在 URI 的authority
部分中描述的 userinfo
不是有效形式
The user information, if present, is followed by a commercial at-sign ("@") that delimits it from the host.
如果你需要这个,你需要URL编码@
并在你的系统中解析,例如https://user%40cool@example.com/