我曾经在终端中使用curl命令访问一个php网页,以测试网页中的一些API。这个方法非常有效。
例如:
curl www.somesite.com -d parmetername=value
现在这个页面有基本的http身份验证。我知道只需要添加“-u”来提供用户名和密码。我还查了一下谷歌,几乎每个人都建议按照以下方式进行:
curl -u username:password www.somesite.com -d parmetername=value
curl --user username:password www.somesite.com -d parmetername=value
或者
curl http://username:password@www.somesite.com -d parmetername=value
我已经尝试了这两个方法,但都无效。我收到了以下相同的错误信息:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>401 Authorization Required</title>
</head><body>
<h1>Authorization Required</h1>
<p>This server could not verify that you
are authorized to access the document
requested. Either you supplied the wrong
credentials (e.g., bad password), or your
browser doesn't understand how to supply
the credentials required.</p>
<p>Additionally, a 401 Authorization Required
error was encountered while trying to use an ErrorDocument to handle the request.</p>
<hr>
<address>Apache/2.2.29 (Unix) mod_ssl/2.2.29 OpenSSL/1.0.1e-fips mod_bwlimited/1.4 Server at www.somesite.com Port 80</address>
</body></html>
我尝试通过浏览器访问网站。在弹出窗口中输入用户名和密码后,我可以访问该网站。
有人知道这里发生了什么吗?谢谢。