我正在用PHP构建一个REST web服务客户端,目前我正在使用curl向该服务发出请求.

如何使用curl发出经过身份验证(http basic)的请求?我必须自己添加标题吗?

推荐答案

你想要这个:

curl_setopt($ch, CURLOPT_USERPWD, $username . ":" . $password);  

Zend有一个REST客户端和Zend_http_客户端,我相信PEAR有某种包装器.

因此,整个请求可能如下所示:

$ch = curl_init($host);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/xml', $additionalHeaders));
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_USERPWD, $username . ":" . $password);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $payloadName);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$return = curl_exec($ch);
curl_close($ch);

Php相关问答推荐

PHP在将数组子集赋给变量时是否复制数组子集?

try 修改这个PHP代码如果语句在WordPress""

FatFreeFramework上的不同路由

在WooCommerce管理订单页面中显示区域名称

WordPress:将自定义单选输入字段添加到用户配置文件

致命错误:未捕获错误:Google\Auth\HttpHandler\HttpHandlerFactory::build()

服务器迁移后无法上载文件-可能存在权限问题

基于自定义域的每个购物车项目的WooCommerce定制数量输入步骤

模式 bootstrap 未显示

如何使用barryvdh/laravel-Snappy在两个打印页面上将表格分成两部分?

HTAccess重写一些URL,但将所有其他URL发送到另一个页面

如何在 Woocommerce 中自动删除旧的已完成订单

在 WordPress 中将自定义帖子类型永久链接设置为 root

根据WooCommerce中的产品重量更改简单产品的输入数量步值

WooCommerce订单支付页面上的附加支付订单按钮

在PHP WordPress插件中使用变量连接路径时的问题解决方法

如何通过工厂为点列制作一个假坐标?

Laravel auth()->id() 在生产服务器中不工作

如何使用动态变量定义 bind_result?

PHP Remedy API 调用以创建附件无效的条目(使用 Postman Works!)