订阅发出禁止错误

时间:2015-11-17 21:52:37

标签: python apache-spark spark-streaming pubnub

我有两部分python独立应用程序:发布者和订阅者。

发布者生成虚假的JSON设备对象,并将其发布在名为" devices。"正如您所猜测的那样,订阅者订阅了频道"设备。"

(另外,给定可选的命令行参数,发布者或订阅者可以将JSON对象写入套接字或本地目录,其中Apache Spark Streaming上下文拾取JSON对象并对其进行处理。目前,这不在图片中,因为它是可选的。)

但是,我的问题是当我的订阅者运行时,在发布者完成后,我得到了“错误:禁止"。

以下是发布商的相应python代码段:

pubnub = Pubnub(publish_key="my_key", subscribe_key="my_key")
....
pubnub.publish(ch, device_msg)

在订阅者python文件中,我有以下初始化代码:

def receive(message, channel):
  json.dumps(message)

def on_error(message):
   print ("ERROR: " + str(message))
....
pubnub = Pubnub(publish_key="my_keys", subscribe_key="my_keys")

# subscribe to a channel and invoke the appropriate callback when a message arrives on that 
# channel
#
pubnub.subscribe(channels=ch, callback=receive, error=on_error)
pubnub.start()

虽然发布者在运行时似乎在循环中发布了所有120个JSON消息,而订阅者在运行时似乎失败并显示以下错误消息:

ERROR: Forbidden

我尝试使用" demo"钥匙没有任何区别。请注意,我正在使用PubNub的试用帐户。

由于这是我使用其API的第一个应用程序之一,之前有人见过这个问题。当然,这里有一些非常明显或微不足道的东西。

1 个答案:

答案 0 :(得分:0)

答案是发布/子密钥存在复制/粘贴错误。