嗨,我正在iPhone上开发Twitter客户端,这里我使用MGTwitter库和OAuthentication,我正在验证(登录)和获取请求令牌,
我的问题是,当我发送请求时,我收到错误
请求8DC1F854-0F16-40BF-85EC-669AF0B25FCE失败并显示错误:错误域= HTTP代码= 401"操作无法完成.(HTTP错误401.)"
我该如何解决这个错误
请告诉我
谢谢
我正试图在Eclipse中部署一个相当大的应用程序而不是相当慢的互联网连接.在文件上传期间的15-30分钟后,部署过程因401 Unauthorized(无效OAuth令牌)错误而中止.这是某个登录cookie上的超时,还是我做错了什么?
解决方法:幸运的是,AppEngine非常智能,无法重新上传相同的文件,所以我需要做的就是"appcfg rollback"并尝试再次部署.最终所有文件都上传了,一切都很好.真烦人......
谢谢,
马库斯
eclipse deployment google-app-engine oauth http-status-code-401
在HTTP 1.1规范说:
10.4.4 403 禁止
服务器理解请求,但拒绝满足它。
授权无济于事,不应重复该请求。[...]
这是否仅意味着“基本授权”,如WWW-Authenticate: Basic?对于某些其他用户可能通过基本 HTTP 身份验证以外的方式(例如通过他的会话 cookie、OpenID 等)访问被拒绝资源的资源,是否应该发出 403?
我问这个是因为 HTTP 401 说...
响应必须包含一个
WWW-Authenticate header字段
...我不确定我是否真的应该添加一个像WWW-Authenticate: Custom.
许多人似乎使用 403,即使在一个简单的 cookie 可以使资源可用的情况下也是如此。他们都错了吗?
authentication standards http http-status-code-403 http-status-code-401
我有一个带有 MVC、Web API 和 SignalR 并使用 Windows 身份验证的 .Net 4.5 网站。一切运行良好,直到我将集线器添加到我的 HTML 中:
@Scripts.Render("~/signalr/hubs")
Run Code Online (Sandbox Code Playgroud)
有了这条线,大约有 1/3 的时间,当我按 F5 刷新页面时,在页面加载之前,我会收到用户名/密码提示。这有时只影响集线器,有时会影响一些 MVC 视图,有时会影响整个页面。我有这个Startup.cs:
public class Startup
{
public void Configuration(IAppBuilder app)
{
app.SetDefaultSignInAsAuthenticationType(NtlmAuthenticationDefaults.AuthenticationType);
app.UseNtlmAuthentication();
app.MapSignalR(new HubConfiguration()
{
EnableDetailedErrors = true,
EnableJSONP = true
});
}
}
Run Code Online (Sandbox Code Playgroud)
在web.config:
<authentication mode="Windows" />
<authorization>
<deny users="?" />
</authorization>
Run Code Online (Sandbox Code Playgroud)
我注意到在 Fiddler 中请求 hubs.js 有一个Authorization: Negotiate ...标头。紧随其后的是第二个请求,也是针对 hub.js,使用Authorization: Negotiate ...,但哈希值不同。
有谁知道为什么会发生这种情况以及如何解决它?可根据要求提供其他诊断信息。请注意,我实际上并没有连接到 SignalR 集线器。此时我正在做的就是加载集线器 JS。
这似乎只发生在 Chrome …
我一直在尝试使用axios向国家公园服务API发出GET请求,并尝试了几种方法在请求标头中设置我的API密钥无济于事.任何帮助将不胜感激.
我试过了:
axios.defaults.headers.common['Authorization'] = "MY-API-KEY";
axios.get('https://developer.nps.gov/api/v0/parks?parkCode=yell')
.then((resp) => {
console.dir(resp);
});
Run Code Online (Sandbox Code Playgroud)
和
let config = {'Authorization': 'MY-API-KEY'};
axios.get('https://developer.nps.gov/api/v0/parks?parkCode=yell', config)
.then((resp) => {
console.dir(resp);
});
Run Code Online (Sandbox Code Playgroud)
当我在Postman中发送GET请求时,它会返回401.它在密钥字段中输入Authorization,在值字段中输入我的API密钥.
谢谢.
我正在向需要身份验证的服务发送请求,由于我当前的状态不是,我收到了 401 响应。我想看看我是否可以在我的代码中处理这个问题,在客户端并用 Typescript 编写:
this.http.post(url, body, options).catch(e => {
if (e.status === 401) {
//Handle 401
}
return Observable.throw(e);
});
Run Code Online (Sandbox Code Playgroud)
但问题是e.status即使从网络面板我可以看到响应的状态实际上是 401 ,它也是零。这是 Angular 的问题还是我做错了什么?
这是 的返回值JSON.strigify(e):
{
"_body": { "isTrusted": true },
"status": 0,
"ok": false,
"statusText": "",
"headers": {},
"type": 3,
"url": null
}
Run Code Online (Sandbox Code Playgroud)
顺便说一句,我使用的是 Angular 4.0.0(核心和 http)。
由于上面发送的发布请求,这是我在控制台中遇到的错误:
(2) POST http://192.168.2.10:8080/test 401 ()
XMLHttpRequest cannot load http://192.168.2.10:8080/test. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://192.168.2.10:4200' is therefore …Run Code Online (Sandbox Code Playgroud) 我对Laravel 5.5 Passport API身份验证有一个非常奇怪的问题.
我需要允许外部站点通过"隐式授权令牌"方法进行身份验证,并从API获取数据.
我坚持认证.JavaScript向API发送一个AJAX请求,但它得到的全部是401(未授权)错误(而不是令牌).
设置是通过本书(https://laravel.com/docs/5.5/passport#implicit-grant-tokens)
Fresh Laravel 5.5安装
Laravel CORS添加了https://github.com/barryvdh/laravel-cors
Passport包安装 composer require laravel/passport
移民 php artisan migrate
护照安装 php artisan passport:install
App\User 模型调整
AuthServiceProvider 调整
config/auth.php 调整
使用创建的示例客户端 php artisan passport:client
Passport::enableImplicitGrant(); 添加到 AuthServiceProviderJS看起来像这样:
var serialize = function(obj) {
var str = [];
for (var key in obj)
if (obj.hasOwnProperty(key)) {
str.push(encodeURIComponent(key) + "=" + encodeURIComponent(obj[key]));
}
return str.join("&");
}
var request = new XMLHttpRequest();
var data = {
'client_id': '1',
'response_type': 'token', …Run Code Online (Sandbox Code Playgroud) php authentication http-status-code-401 laravel laravel-passport
我们将Basic Auth用于我们的Web产品的登录系统。通常,当通过Web进行Api呼叫并且不存在身份验证时,浏览器(Chrome,Firefox或IE)会提示Windows安全警报或弹出窗口要求用户登录。
在使用Chrome的Fiddler中,它将显示“待处理”请求和登录警报。我登录后,所有api请求均收到200。确定
在使用IE的Fiddler中,它将显示多个401错误,然后弹出Windows安全性。我登录后,随后对所有api调用的200个请求将自动跟随。好
问题:在使用Edge的Fiddler中,它将显示多个401错误,然后将出现Windows安全性弹出窗口。我使用正确的凭据登录,一个呼叫将使用该身份验证并收到200。但是随后会弹出另一个弹出窗口,因此我使用我的凭据登录,另一个呼叫将使用该身份验证并接收200。所有后续通话,我最终将可以使用该网站。
如果我此后重新加载Edge(但不关闭它),则所有呼叫将立即收到200。
我不知道为什么Edge在第一次呼叫通过身份验证后似乎没有缓存身份验证。我在Microsoft问题跟踪器中找不到与此类似的任何问题。我怀疑如果是正常的话,我是唯一经历过的人。所以我一定设置错了。
我已经检查了api和网站中IIS中的每种身份验证组合。因此,任何其他建议都将受到高度赞赏。
iis basic-authentication http-status-code-401 microsoft-edge
在使用 auth0 PHP SDK 进行身份验证后,我正在努力获取用户信息。这是在我的本地主机上使用 ngrok。我只是使用 SDK 中的基本示例文件,我可以正常登录。但是,登录后,当它重定向到我的回调 url 并尝试交换身份验证代码时,我收到“未经授权”的 401 错误。
这是 wamp 中的错误:
在日志中,我可以看到登录成功,但是在尝试交换身份验证代码时,它失败了。
我还可以确认我正在获取查询参数中的代码和状态:
https://myurl.ngrok.io/auth/?code=ygKukP3B5_xk0pbb&state=5ae5b7a643aa46.52329844
Run Code Online (Sandbox Code Playgroud)
在尝试使其工作时,我对示例文件进行了一些轻微修改,但我认为这不是罪魁祸首。以防万一,这里是代码:
require 'vendor/autoload.php';
//require 'dotenv-loader.php';
use Auth0\SDK\Auth0;
$domain = 'mydomain.auth0.com';
$client_id = 'MYCLIENT';
$client_secret = 'MYSECRET';
$redirect_uri = 'https://myurl.ngrok.io/auth/';
$auth0 = new Auth0([
'domain' => $domain,
'client_id' => $client_id,
'client_secret' => $client_secret,
'redirect_uri' => $redirect_uri,
'persist_id_token' => true,
'persist_refresh_token' => true,
'audience' => 'https://mydomain.auth0.com/userinfo',
'scope' => 'openid profile'
]);
if (isset($_REQUEST['logout'])) {
$auth0->logout();
session_destroy();
header("Location: /");
die();
}
if(isset($_REQUEST['code'])) {
$userInfo = …Run Code Online (Sandbox Code Playgroud)