我想在我的应用程序中实现短信的发送。我对此并不陌生,所以请多多包涵。
以下是用户要发送消息时应点击的按钮的代码:
@IBAction func sendMessageButtonTapped(_ sender: UIButton) {
if let accountSID = ProcessInfo.processInfo.environment["TWILIO_ACCOUNT_SID"],
let authToken = ProcessInfo.processInfo.environment["TWILIO_AUTH_TOKEN"] {
let url = "https://api.twilio.com/2010-04-01/Accounts/\(accountSID)/Messages"
let parameters = ["From": "123456789", "To": "987654321", "Body": "Hello from Swift!"]
AF.request(url, method: .post, parameters: parameters)
.authenticate(username: accountSID, password: authToken)
.responseJSON { response in
debugPrint(response)
}
print(accountSID) //Does not get called
RunLoop.main.run()
}
}
此代码是从Twilio´s own guide to sending text messages from Swift抓取的
当我按照指南进行操作并在内置终端中发送消息时,但是当我使用上述代码运行应用程序时,什么也没发生。 package.swift
和“ main.swift”是否应以某种方式在项目中实现?还是我完全偏离目标?
编辑* 当我添加时:
print(ProcessInfo.processInfo.environment["TWILIO_ACCOUNT_SID"])
print(ProcessInfo.processInfo.environment["TWILIO_AUTH_TOKEN"])
返回@IBAction func sendMessageButtonTapped(_ sender: UIButton)
会返回nil,但是如果我运行以下命令:echo $TWILIO_AUTH_TOKEN
和echo $TWILIO_ACCOUNT_SID
则会返回正确的值。
答案 0 :(得分:1)
这里是Twilio开发人员的传播者。
您遵循的代码用于在服务器上使用Swift调用Twilio API。
我们不建议您从应用程序对Twilio API进行API调用,因为这样做将需要包括或嵌入Twilio凭据。然后,恶意用户可能会反编译应用程序并滥用您的帐户。
相反,我们建议您设置自己的服务器,然后从应用程序中调用它。然后,服务器可以确保您的凭据安全。 how to send an SMS from iOS in Swift上有一篇博客文章,向您展示如何做到这一点。