Swift Twilio:遵循《入门指南》时不发送短信

Swift Twilio:遵循《入门指南》时不发送短信,swift,twilio,Swift,Twilio,作为一个延续,我没有收到任何短信后,以下。我也没有得到任何错误 这是我的软件包。swift文件: import PackageDescription let package = Package( name: "MyProject", dependencies: [ .package(url: "https://github.com/Alamofire/Alamofire.git", from: "4.0.0")

作为一个延续,我没有收到任何短信后,以下。我也没有得到任何错误

这是我的
软件包。swift
文件:

    import PackageDescription

    let package = Package(
        name: "MyProject",
        dependencies: [
            .package(url: "https://github.com/Alamofire/Alamofire.git", from: "4.0.0")
        ],
        targets: [
            .target(
                name: "MyProject",
                dependencies: ["Alamofire"]),
            .testTarget(
                name: "MyProjectTests",
                dependencies: ["Alamofire"]),
            ]
    )
import Foundation
import Alamofire

if let accountSID = ProcessInfo.processInfo.environment["MY_PERSONAL_SID"],
    let authToken = ProcessInfo.processInfo.environment["MY_PERSONAL_AUTHTOKEN"] {

    let url = "https://api.twilio.com/2010-04-01/Accounts/\(accountSID)/Messages"
    let parameters = ["From": "MY_TWILIONUMBER", "To": "MY_PERSONAL_NUMBER", "Body": "Hello from Swift!"]

    Alamofire.request(url, method: .post, parameters: parameters)
        .authenticate(user: accountSID, password: authToken)
        .responseJSON { response in
            debugPrint(response)
    }

    RunLoop.main.run()
}
这是我的
main.swift'文件

    import PackageDescription

    let package = Package(
        name: "MyProject",
        dependencies: [
            .package(url: "https://github.com/Alamofire/Alamofire.git", from: "4.0.0")
        ],
        targets: [
            .target(
                name: "MyProject",
                dependencies: ["Alamofire"]),
            .testTarget(
                name: "MyProjectTests",
                dependencies: ["Alamofire"]),
            ]
    )
import Foundation
import Alamofire

if let accountSID = ProcessInfo.processInfo.environment["MY_PERSONAL_SID"],
    let authToken = ProcessInfo.processInfo.environment["MY_PERSONAL_AUTHTOKEN"] {

    let url = "https://api.twilio.com/2010-04-01/Accounts/\(accountSID)/Messages"
    let parameters = ["From": "MY_TWILIONUMBER", "To": "MY_PERSONAL_NUMBER", "Body": "Hello from Swift!"]

    Alamofire.request(url, method: .post, parameters: parameters)
        .authenticate(user: accountSID, password: authToken)
        .responseJSON { response in
            debugPrint(response)
    }

    RunLoop.main.run()
}
当我运行
swift build&./.build/debug/MyProject
时,它似乎工作正常,但我没有收到任何消息

我不确定我做错了什么,但我有一些问题:

  • 这两个命令:

    export TWILIO\u ACCOUNT\u SID='YOUR\u ACCOUNT\u SID'

    export TWILIO\u AUTH\u TOKEN='YOUR\u AUTH\u TOKEN'

    我可以在终端从哪里运行它们吗?或者应该在特定文件夹中运行它们?(当我运行命令时,我将
    SID
    TOKEN
    更改为我个人的)

  • 包.swift
    应该位于我的Xcode项目的基本文件夹中吗

  • main.swift
    应位于
    ../MyProject/Sources/MyProject/main.swift

  • 命令
    swift build&./.build/debug/MyProject

    在“main.swift”解释下的指南中,它说:

  • 用这个命令运行它,你会收到一条短信


    它们对
    有什么特别的意义吗?用这个命令运行它
    ?或者我可以从哪里从终端运行命令?

    这里是Twilio developer evangelist

    当你跑的时候

    export TWILIO_ACCOUNT_SID='YOUR_ACCOUNT_SID'
    export TWILIO_AUTH_TOKEN='YOUR_AUTH_TOKEN'
    
    您需要在最终运行应用程序的同一窗口中的终端中执行此操作。你可以阅读更多关于

    main.swift
    文件中,您有以下行:

    if let accountSID = ProcessInfo.processInfo.environment["MY_PERSONAL_SID"],
        let authToken = ProcessInfo.processInfo.environment["MY_PERSONAL_AUTHTOKEN"] {
    
    我相信您的程序正在运行,但没有发送任何内容,因为您正在尝试从名为
    MY_PERSONAL\u SID
    MY_PERSONAL\u AUTHTOKEN
    的环境中分配变量。如果您正按照描述导出环境变量,则此行应为:

    if let accountSID = ProcessInfo.processInfo.environment["TWILIO_ACCOUNT_SID"],
        let authToken = ProcessInfo.processInfo.environment["TWILIO_AUTH_TOKEN"] {
    

    如果有任何帮助,请告诉我。

    太好了!错误是我将我的个人信息放在了
    accountSID'中,
    authToken`我在终端会话结束时遇到了一个错误:
    [数据]:925字节[结果]:失败:responseSerializationFailed(原因:Alamofire.AFError.ResponseSerializationFailureReason.jsonSerializationFailed(错误:error Domain=nscocaerordomain Code=3840“字符0周围的值无效。”UserInfo={NSDebugDescription=字符0周围的值无效。}))
    这是我需要解决的问题吗?看起来像是JSON解析错误,请尝试将
    .JSON
    添加到您请求的URL的末尾。您是否能够在尝试解析之前打印出响应?