我正在就如何快速实现pubnub访问管理器进行研发,经过一番研究,我知道了:
我已经在pubnub信息中心中创建了一个函数,并创建了一个 模块PubNub,还创建了事件类型为“ On Request”的函数 并添加了授权代码。
export default (request, response) => {
const pubnub = require('pubnub');
const kvstore = require('kvstore');
let headersObject = request.headers;
let paramsObject = request.params;
let methodString = request.method;
let bodyString = request.body;
response.headers['Access-Control-Allow-Origin'] = '*';
response.headers['Access-Control-Allow-Headers'] = 'Origin, X-Requested-With, Content-Type, Accept';
response.headers['Access-Control-Allow-Methods'] = 'GET, POST, OPTIONS, PUT, DELETE';
response.headers['Content-Type'] = 'application/json';
var uuid = 'aartisagarvadgama'
return pubnub.grant({
channels: ['channel_atts_pubnub'],
read: true, // false to disallow
write: false, // false to disallow,
authKeys: [uuid],
ttl: 0
}).then(() => {
console.log('grant success')
response.status = 200;
return response.send(uuid);
}).catch((error) => {
console.log(error);
response.status = 400;
return response.send();
});
};
我通过从函数复制URL并获取成功代码来调用上述函数,但是这如何反映我的iOS应用程序。
无论如何,请让我知道我可以在我的应用中实现访问管理器。
据我了解,我需要创建一个函数并通过调用 该功能我可以授予用户。之后,当我尝试 订阅或发布,我将得到200而不是403。任何帮助将是 赞赏。请帮助我。
答案 0 :(得分:0)
PubNub Swift SDK (Access Manager Tutorial)没有授予方法,因为您需要使用密钥来初始化PubNub,并且永远不要在客户端应用程序中这样做。您只应在安全的服务器上这样做。您的服务器向传回客户端的auth-key(例如Swift应用程序)授予权限,并且该auth-key用于通过您的订阅密钥和可选的发布密钥来初始化PubNub。