Sails.js socket.io Basic Auth无法使用JS和iOS(SIOSocket Library)客户端

时间:2016-06-15 15:38:12

标签: javascript ios socket.io sails.js basic-authentication

我正在使用基本身份验证的Sails.JS并尝试从iOS客户端进行通信。

我已经在sails.js中定义了一个auth策略,其中包含所有REST API的设置Autorization: Basic dfjghleiughlaeughlsi标头,并且它运行良好。

使用Socket.IO时出现问题。

我使用SIOSocket库用于iOS客户端并在服务器端发送相同的接收,Sails.js尝试将其解释为HTTP请求,最终的HTTP请求缺少授权标头。

我正在使用sails.io.js客户端库并设置requestCtx.headers.authorization = 'Basic akjfblajasoidhgoaihu==';并在服务器端发生同样的事情。

以下是我看到的服务器端的日志

verbose: Receiving incoming message from Socket.io:  { data: { id: '568ea5fb8e8b0c995167cd62' },
  method: 'post',
  headers: { authorization: 'basic akjfblajasoidhgoaihu==' },
  url: '/v8/user/setOnline' }
verbose: Interpreting socket.io message as virtual request to "post /v8/user/setOnline"... { host: undefined,
  cookie: 'true=03FRq_UQ1hB6IdcvAAAC; sails.sid=s%3AhaOna60cfWI3y_6orhN_tmeEDcenA5NB.%2Fp4AQKEyW56nfQT3ithyNeQLyx5frX2yoAvVnCvY9U0',
  authorization: 'basic akjfblajasoidhgoaihu==',
  origin: undefined }
silly: Handling virtual request :: Running virtual querystring parser...
silly: Handling virtual request :: Running virtual body parser...

在我的身份验证政策请求中没有任何授权标头。

感谢任何帮助。

0 个答案:

没有答案