Excel Power Query发起Basic认证时先发送未授权请求是否正常?
这个现象是完全正常的
这是HTTP Basic认证的标准工作流程导致的,具体过程如下:
- 当Excel Power Query第一次请求你的PHP脚本时,默认不会携带任何认证信息,此时你的脚本检测到
$_SERVER['PHP_AUTH_USER']不存在,触发第一个分支逻辑:返回401 Unauthorized响应,并记录那条未授权的错误日志。 - Power Query收到401响应后,会弹出认证窗口提示用户输入账号密码;用户完成输入后,Power Query会发起第二次请求,这次请求会携带包含账号密码的
Authorization请求头。 - 你的脚本在第二次请求中检测到
PHP_AUTH_USER和PHP_AUTH_PW都存在,进入授权分支,记录authorized request的信息日志。
所有遵循HTTP标准的客户端(包括Power Query)都会按照这个"先无认证请求→收到401→携带认证信息重试"的流程来处理Basic认证,所以你看到的日志顺序是完全符合预期的,不需要做额外调整。
内容的提问来源于stack exchange,提问作者theking2
相关产品推荐
相关产品推荐

