Swift 不发送任何短信

Swift 不发送任何短信,swift,twilio,Swift,Twilio,我想在我的应用程序中实现发送短信。我是新手,所以请容忍我 以下是用户在想要发送消息时应点击的按钮的代码: @IBAction func sendMessageButtonTapped(_ sender: UIButton) { if let accountSID = ProcessInfo.processInfo.environment["TWILIO_ACCOUNT_SID"], let authToken = ProcessInfo.proc

我想在我的应用程序中实现发送短信。我是新手,所以请容忍我

以下是用户在想要发送消息时应点击的按钮的代码:

   @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()
        }     
    }    
此代码是从

当我遵循指南,内置终端时,它会发送消息,但当我用上面的代码运行应用程序时,什么也没发生。
package.swift
和“main.swift”是否应该以某种方式在项目中实施?还是我完全偏离了目标

编辑* 当我加上:

 print(ProcessInfo.processInfo.environment["TWILIO_ACCOUNT_SID"])
 print(ProcessInfo.processInfo.environment["TWILIO_AUTH_TOKEN"])

对于
@IBAction func sendMessageButtonTapped(\uSender:UIButton)
它返回nil,但是如果我运行以下命令:
echo$TWILIO\u AUTH\u TOKEN
echo$TWILIO\u ACCOUNT\u SID
它返回正确的值

这里是Twilio开发者福音传道者

下面的代码用于在服务器上使用Swift调用Twilio API

我们不建议您从应用程序对Twilio API进行API调用,因为这样做需要包含或嵌入Twilio Crendential。恶意用户可能会反编译应用程序并滥用您的帐户


相反,我们建议您设置自己的服务器,从应用程序中调用该服务器。然后服务器可以保护您的凭据安全。上有一篇博客文章向您展示了如何做到这一点。

我怀疑
ProcessInfo.ProcessInfo.environment[“TWILIO\u ACCOUNT\u SID”]
ProcessInfo.ProcessInfo.environment[“TWILIO\u AUTH\u TOKEN”]
为零。这也是我的想法。但是我该如何设置它们呢?我已经从我的项目的根文件夹中运行了命令:
export-TWILIO\u-ACCOUNT\u-SID='YOUR\u-ACCOUNT\u-SID'
export-TWILIO\u-AUTH\u-TOKEN='YOUR\u-AUTH\u-TOKEN'
。当然有我自己的证件。这不对吗?您是在运行项目的同一终端窗口中执行此操作的吗?我想它运行在不同的范围内。您可能需要将这些添加到您的bash_rc文件中(如果我没有记错的话)@Anvil您是否按照Scriptable的建议对其进行了排序?这篇关于的博客文章可能会有所帮助。@philnash感谢您的后续行动。不,我还是无法发送消息。我已经设置了环境变量,因此当我运行echo$TWILIO\u ACCOUNT\u SID和echo$TWILIO\u AUTH\u TOKEN命令时,它会返回正确的值。但应用程序仍然无法发送。是否有其他配置我丢失或做错了?请回答我的问题。我现在明白了。谢谢你的澄清