javascript - 如何在 swift 中实现 Pubnub Access Manager

标签 javascript ios swift pubnub

我正在研发如何在 swift 中实现 pubnub 访问管理器,经过一些研究,我了解到:

  • Swift SDK 不包含 pubnub.grant
  • 我需要使用 pubnub 函数进行无服务器计算来实现此目的

I have created one function in the pubnub dashboard and created a module PubNub, also created a function with event type "On Request" and added code of grant.

  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 并获取成功代码来调用上面的函数,但这如何反射(reflect)我的 iOS 应用程序。

无论如何,请告诉我如何在我的应用程序中实现访问管理器。

As per my understanding, I need to create a function and by calling that function I can grant the user. After that When I will try to subscribe or publish, I will get 200 instead of 403. Any help will be appreciated. Please help me.

最佳答案

Swift 应用程序的 PubNub 访问管理器

PubNub Swift SDK (Access Manager Tutorial)没有 grant 方法,因为您需要使用 key 初始化 PubNub,并且永远不应该在客户端应用程序中这样做。您应该只在安全服务器中执行此操作。您的服务器向传回客户端的身份验证 key 授予权限,例如 Swift 应用程序,并且该身份验证 key 用于使用您的订阅 key 和(可选)您的发布 key 来初始化 PubNub。

另请参阅

关于javascript - 如何在 swift 中实现 Pubnub Access Manager,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56889108/

相关文章:

javascript - react 状态更新不正确

objective-c - 旋转 CGImage

ios - UIPickerView NSInvalidArgumentException',原因: '-[__NSCFString superview]: unrecognized selector sent to instance

swift - 难以理解 SwiftLint 错误/警告日志

swift - 协议(protocol)扩展初始化器

javascript - Webpack 开发服务器不提供输出

javascript - 突出显示元素中的子字符串

javascript - 将解析添加到 Angular ui-router 嵌套 View ?

ios - 将我的渐变设置为 BezierPath 的弧线

swift - iOS Swift 3 - 自动布局,根据文本或 View 大小更改高度