ios - 为什么我的 Auth0 token 从 iOS 发送到 node.js 服务器时总是返回无效?
<p><p>我正在将 Auth0 的服务用于 iOS 应用程序,该应用程序具有基于 node.js 和 express.js 构建的服务器。我已尽我所能关注 Auth0 的文档和种子项目,但服务器一直提示我从 iOS 应用程序发送的 token 无效。这是我的一些代码:</p>
<p>来自服务器 - 身份验证和路由声明,在 <a href="https://auth0.com/docs/quickstart/backend/nodejs" rel="noreferrer noopener nofollow">Auth0 documentation</a> 中指定</p>
<pre><code>var authenticate = jwt({
secret: new Buffer(process.env.AUTH0_CLIENT_SECRET, 'base64'),
audience: process.env.AUTH0_CLIENT_ID
});
app.use('/api', authenticate);
app.use('/api/userquery', queries);
</code></pre>
<p>在 iOS 中,设置请求的 header (使用 AFNetworking):</p>
<pre><code>request.setValue("Bearer \(token)", forHTTPHeaderField: "Authorization")
</code></pre>
<p>我知道请求正在正确发送,因为它适用于不需要身份验证的路径。最后,这是我在服务器端收到的错误:</p>
<pre><code>GET /api/userquery/currentUser 401 7.185 ms - 436
UnauthorizedError: invalid token
at /node_modules/express-jwt/lib/index.js:100:22
at /node_modules/jsonwebtoken/index.js:155:18
at _combinedTickCallback (internal/process/next_tick.js:67:7)
at process._tickCallback (internal/process/next_tick.js:98:9)
</code></pre></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>问题只是我在将 token 从钥匙串(keychain)中拉出后未能解开它。我没有在 Authorizationheader 中发送“Bearer ”,而是发送“Bearer ”。</p></p>
<p style="font-size: 20px;">关于ios - 为什么我的 Auth0token 从 iOS 发送到 node.js 服务器时总是返回无效?,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/38464590/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/38464590/
</a>
</p>
页:
[1]