Yelp API OAuth – oauth_signature

我想在Swift iOS应用程序中使用Yelp API,但是对于encryption来说是新的。 我知道我应该使用SHA1encryption签名,但在Swift / Xcode中找不到这样做的好资源。

另外,Yelp文档说我应该把签名值作为“生成的请求签名,用获得的oauth_token_secret签名”。 我不明白“签署”是什么意思。 链接到这里的文档: Yelp身份validation

任何帮助将非常感激。

更新:看看CocoaPods YELP解决scheme,你可以select使用CocoaPod,直接embedded代码或者只是使用代码作为例子。

另一种方式是CocoaPods OAuth 。

SHA1不是encryption,它是一个哈希函数,为其input创build一个20字节的签名。

以下是一个可能有用的示例,但可能不符合您的input和输出数据格式:

 func sha1(string string: String) -> [UInt8] { var digest = [UInt8](count: Int(CC_SHA1_DIGEST_LENGTH), repeatedValue: 0) if let data = string.dataUsingEncoding(NSUTF8StringEncoding) { CC_SHA1(data.bytes, CC_LONG(data.length), &digest) } return digest } 

//testing:

 let digest = sha1(string:"Here is the test string") print("digest: \(digest)") 

输出:

消化:[143,131,57,51,3,161,81,234,51,191,110,62,187,194,133,148]