当前位置: 首页 > 面试题库 >

如何在PHP curl中使用基本授权

萧懿轩
2023-03-14
问题内容

我在使用基本授权的PHP curl请求时遇到问题。

这是命令行curl:

curl -H "Accept: application/product+xml" "https://{id}:{api_key}@api.domain.com/products?limit=1&offset=0"

我已经尝试通过以下方式设置curl标头,但无法正常工作

Authorization: Basic id:api_key
or 
Authorization: Basic {id}:{api_key}

我收到响应“请求中的身份验证参数丢失或无效”,但我使用了在命令行curl中有效的ID和api_key(已测试)

请帮我。


问题答案:

试试下面的代码:

$username='ABC';
$password='XYZ';
$URL='<URL>';

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$URL);
curl_setopt($ch, CURLOPT_TIMEOUT, 30); //timeout after 30 seconds
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
curl_setopt($ch, CURLOPT_USERPWD, "$username:$password");
$result=curl_exec ($ch);
$status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);   //get status code
curl_close ($ch);


 类似资料:
  • 我正在尝试使用Reddit API(https://github.com/reddit-archive/reddit/wiki/OAuth2)在我的ASP。NET Core MVC应用程序,为了获得令牌,我必须使用HTTP基本授权(用户名和密码是客户端id和密码)对URI进行POST。目前我使用的代码是: 然而,这并没有使用授权。如何添加授权?我试图查看< code>HttpClient的文档。P

  • 我试图在一个已经设置了基本auth的Spring Boot应用程序中配置CORS。 我在很多地方搜索过,包括这个答案,它指向官方文档中基于过滤器的CORS支持。 到目前为止还没有运气。

  • 并得到成功的回应 但是当使用访问令牌请求安全资源时,我会被重定向到Spring Security配置的登录页面bacause。 Spring Security OAuth2配置 以下是整个程序:https://github.com/gee0292/oauth2demo

  • 我想使用环境变量在Postman中设置基本授权。因为我对不同的API调用有不同的授权用户名和密码。 我的邮递员设置如下: 在授权选项卡中:我在标题选项卡中选择了无授权 :密钥=值= 在正文选项卡中: 在“预先请求”选项卡中: 在测试选项卡中: 然后我发送了请求,但未获授权。 之后,我已将身份验证类型设置为具有用户名和密码的基本身份验证,它工作正常,并且我从响应中得到了我想要的内容。

  • 问题内容: 如何在AngularJs中使用基本身份验证?我已经在Google上搜索了,但是资源对我来说不起作用。我 非常 新AngularJS 问题答案: 假设您的html定义如下: 您可以使用以下基本身份验证将后端连接到rest api: 请注意,此代码的大部分是方法。如果不需要支持IE9及更低版本,则可以将其替换为本地JS实现- atob()和btoa():https : //develope

  • 我正在尝试使用基本授权让WSMan工作。我总是遇到访问被拒绝的错误。Kerberos身份验证工作正常。 Windows远程管理服务正在域A的Windows Server 2008 R2上运行,并具有以下配置: 我正在域B中的Windows 7工作站上执行Test-WSMan: 并得到以下错误: 请注意,以下命令可以正常工作: 以下日志在Windows Server上显示: 有人能帮我解决这个问题吗