如何在不使用PubNub库的情况下使用PubNub和MtGox api?

时间:2014-01-07 20:39:00

标签: pubnub mtgox

我正在Dart中编写一个应用程序,PubNub没有可用的库。我的问题是,是否可以使用Websockets与MtGox api(据我所知,建立在PubNub上)进行交互? PubNub如何与Websockets相关?他们的文档主要是宣传他们的SDK库。我很困惑从哪里开始。

1 个答案:

答案 0 :(得分:3)

PubNub Dart订阅Mt.Gox比特币Feed

问题是如何在没有PubNub提供的SLA官方支持的SDK的情况下使用PubNub实时网络。我们不建议这样做,而是提供了推荐的方法,其中包括使用标准的import 'dart:js'库互操作。详细信息如下,但如果您仍想继续使用非库方法,HTTP REST Push API接口的文档将是一个通用的起点。但现在我们继续使用下面推荐的方法!请继续阅读。

使用 Google Dart 订阅Mt.Gox比特币实时Feed非常简单,但最初有点令人困惑。首先使用以下脚本标记设置HTML文件;并且不要忘记PubNub <div>

PubNub Dart Subscribe to Mt.Gox Bitcoin Feed

PubNub Dart HTML文件示例

<h1>PubNub Dart JavaScript SDK Usage Example</h1>

<div id="pubnub" sub-key="sub-c-50d56e1e-2fd9-11e3-a041-02ee2ddab7fe"></div>
<script src="https://cdn.pubnub.com/pubnub.min.js"></script>

<script type="application/dart" src="pubnub_sample.dart"></script>
<script src="packages/browser/dart.js"></script>
<script src="packages/browser/interop.js"></script>
  

注意: PubNub <div>包含Mt.Gox 订阅密钥参数。

PubNub Dart源文件和SDK用法订阅回调示例

接下来,您的Dart应用源代码将只打开TCP Socket到实时流。请注意,频道ID为d5f06780-30a8-4a48-a2f8-7ed181b4a13f。这是Mt.Gox提供的众多频道流之一,允许您接收交易/深度/股票信号。

PubNub Dart源文件

import 'dart:js';

void main() {
  context['PUBNUB'].callMethod( 'subscribe', [new JsObject.jsify({
    "channel" : "d5f06780-30a8-4a48-a2f8-7ed181b4a13f",
    "message" : ( message, env, channel, age ) => print(message)
  })] );
}

就是这样!您可以使用此方法开始从Mt.Gox接收实时实时信号。此外,您还需要为不同类型的活动添加或更改频道。

  

注意:您可以通过请求频道列表API调用找到更多Mt.Gox频道:PubNub Mt.Gox Channel Stream Feed Listing for Ticker/Trade/Depth Signals

PubNub Mt.Gox Channel Stream Feed Listing for Ticker/Trade/Depth Signals