服务端怎么发起 http 基本认证??
高洛峰
高洛峰 2016-11-09 13:54:55
0
2
641

在 js ajax 中有下面这一种情况:
var xhr = new XMLHttpRequest();    // 下面的第四个,第五个参数怎么使用??
   xhr.open('get' , 'authorization.php' , true , username , password);
   xhr.send();
目前为止都没有使用过 ajax open 方法的第四个,第五个参数,今天写 ajax 操作类的时候感觉第四个,第五个参数始终是个疙瘩,就想彻底搞懂他。
网络上说在 需要 http 基本认证的 页面,才需要提供 第四个,第五个参数。
可是我就是不懂 php页面怎么弹出认证框??
我试过:
header('Authorization: username:password');
可这个应该是在 ajax 请求中头设置的,总之,php 这一块怎么弄?? 毫无头绪啊
能否将这个认证的 js 代码, php 代码贴出来 学习(暂时不涉及 oAuth 认证,先学最原始的哈,然后再上 oAuth)?                

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

Antworte allen(2)
代言

  if (!isset($_SERVER['PHP_AUTH_USER'])) {
   header('WWW-Authenticate: Basic realm="My Realm"');
   header('HTTP/1.0 401 Unauthorized');
   echo 'Text to send if user hits Cancel button';
   exit;
 } else {
   echo "

Hello {$_SERVER['PHP_AUTH_USER']}.

";
   echo "

You entered {$_SERVER['PHP_AUTH_PW']} as your password.

";
 }
?>


三叔

正常网络请求状态是200,你要浏览器弹出基本认证窗口,返回状态401即可

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage