gpt4 book ai didi

html - 在 URL 中传递用户名和密码不起作用

转载 作者:可可西里 更新时间:2023-11-01 17:18:06 26 4
gpt4 key购买 nike

我有一些像这样的 URL:X.XXX.XXX.XXX:10080

我尝试在这个 url 中添加用户和密码,如下所示:http://OLM:OLM794$@X.XXX.XXX.XXX:10080

用户 = OLM

Psw = OLM794$

它不起作用

同样,当我运行时:curl http://OLM:OLM794$@X.XXX.XXX.XXX:10080 它向我显示:

curl: (6) Could not resolve host:OLM:OLM794X.XXX.XXX.XXX,它删除了 $@ 和端口 :10080

当我尝试:curl -u OLM X.XXX.XXX.XXX:10080 然后我输入密码时,它起作用了,我能够连接到该服务器。

我需要像这样使用用户名和密码调用我的 url:

http://OLM:OLM794$@X.XXX.XXX.XXX:10080

但它不起作用。

我阅读了这个解决方案:Using cURL with a username and password?但我还没有找到解决方案

你知道为什么吗?

最佳答案

curl 似乎解析并重建了 URL,删除了它认为非法的字符。对我来说,相同的命令会给出不同的错误。可能是您的 curl 版本与我的不同。

$ curl -v http://OLM:OLM794$@127.0.0.1:10000
* Rebuilt URL to: http://OLM:OLM794127.0.0.1:10000/
* Port number ended with 'O'
* Closing connection -1
curl: (3) Port number ended with 'O'

解决方案非常简单,只需对 $ 符号进行 url 转义:%24:

$ curl http://OLM:OLM794%24@127.0.0.1:10000

根据 RFC1738 , 美元符号被允许作为非保留字符,可以直接使用,但是这个旧的 RFC 此后已经更新了很多次。 RFC3986 ,例如,不再将其作为非保留字符提及。这意味着 $ 符号已获得特殊含义,应在任何 URL 中对其不提供其指定功能的地方进行编码。

关于html - 在 URL 中传递用户名和密码不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53115683/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com