我正在尝试在Swift iOS应用程序中使用Yelp API,但我对加密还是个新手。我知道我应该用SHA1加密签名,但在Swift/Xcode中找不到好的资源来做这件事。
此外,Yelp文档说我应该将签名值作为“生成的请求签名,用获得的oauth_token_secret签名”来传递。我不明白“签约”是什么意思。在此处链接到文档:Yelp Authentication
任何帮助都将不胜感激。
发布于 2015-12-10 06:57:19
更新:看看CocoaPods YELP解决方案,您可以选择使用CocoaPod、直接嵌入代码或仅使用代码作为示例。
另一种方法是CocoaPods OAuth。
SHA1不是加密的,它是一个哈希函数,为它的输入创建一个20字节的签名。
下面是一个可能有用但可能不符合输入和输出数据格式的示例:
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
}//测试:
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
https://stackoverflow.com/questions/34189829
复制相似问题