php – 服务器端的CURL HTTP身份验证

栏目: PHP · 发布时间: 5年前

内容简介:Zend Framework具有用于处理HTTP身份验证的现成组件.结帐示例>

我正在使用Zend构建一个Web服务,我必须在发送回应之前验证用户.用户将使用curl发送请求到服务器页面,以curl_setopt($curl,CURLOPT_USERPWD,’key:pass’)的形式传递其凭据;

Iam使用Zend框架,所以服务器端页面如下表示:

http://www.example.com/app_name/public/controller/action/parameter

以下是用户请求的总代码(client.php):

<?php
$curl = curl_init('http://www.example.com/app/public/user/add/1');

curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);                         
curl_setopt($curl, CURLOPT_USERPWD, 'username:password');
curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_ANY);                    
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);                          
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);                           
curl_setopt($curl, CURLOPT_USERAGENT, 'Sample Code');

$response = curl_exec($curl);                                          
$resultStatus = curl_getinfo($curl);                                   

if($resultStatus['http_code'] == 200) {
    echo $response;
} else {
    echo 'Call Failed '.print_r($resultStatus);                         
}

?>

现在我想要的是,我必须能够在服务器端检索用户名和密码(在我的zend控制器中),以便我可以验证来自数据库的用户凭据并相应地发送响应.那么我如何在另一个页面上进行身份验证?

Zend Framework具有用于处理HTTP身份验证的现成组件.

结帐示例

> http://framework.zend.com/manual/en/zend.auth.adapter.http.html

如果你不想使用它,你仍然可以按照“老派”的方式进行

> http://php.net/manual/en/features.http-auth.php

并手动检查$_SERVER [‘PHP_AUTH_USER’]和$_SERVER [‘PHP_AUTH_PW’]

http://stackoverflow.com/questions/4957002/curl-http-authentication-at-server-side


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

转型之战

转型之战

吴晓波 / 2015-7-1

互联网时代大潮席卷而来,互联网究竟是“魔法手杖”,还是“效率金箍棒”?传统企业如何正确借助和利用互联网思维帮助自身转变思维、完成企业转型升级?本书分两篇,上篇为传统行业互联网转型极具代表性和借鉴意义的案例,下篇精选吴晓波转型大课的独 家内容,梳理了吴晓波、刘伟、刘润、金霞、刘博、赵峰、张蕴蓝、张荣耀、李嘉聪、曾玉波等各行业10位导师关于互联网思维的精华理念和观点,其中囊括各传统行业互联网转型成功的......一起来看看 《转型之战》 这本书的介绍吧!

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器