如何在我的Node.js服务器上validationGKLocalPlayer

在Apple的Doc,generateIdentityVerificationSignatureWithCompletionHandler中 ,将连接成数据缓冲区4个参数,其中之一是“ Big-Endian UInt-64格式的时间戳参数”,然后生成一个SHA-1哈希值进行validation。

有没有人在Node.js / Javascript中成功完成这个任务? 我遇到的主要问题是Javascript / Node.js似乎没有任何支持64位无符号的大端整数; 它似乎最大在32位,无符号。

PS:我知道那里有以下相关的问题,但他们没有解决这个特定的JavaScript问题。

  1. 如何在我的“第三方服务器”上validationGKLocalPlayer? :解决scheme是针对ruby,python和obj-c; 所有的本地支持生成时间戳的64位BEhex。
  2. 如何从第三方node.js服务器validationGame Center用户 :代码依赖于客户端向服务器发送一个已经以hexstringforms的时间戳(请参见json.hexTimestamp ,大约在22)

它甚至有可能可靠地创build一个64位无符号大端… 在JavaScript中的hex表示forms? 我正在考虑通过Node.js执行ruby / python作为可能的解决方法。

更简单的方法是使用ref

 var ref = require('ref'); var buf = ref.alloc('uint64'); ref.writeUInt64BE(buf, 0, '1401893400733'); 

之后你可以使用缓冲区来更新validation器。