ios - (有效负载不是有效的 JSON)尝试快速打印到空闲空间

标签 ios swift slack-api

let str = "payload={'channel': '#bottest', 'username': 'garrettogrady', 'text': 'This post is coming from swift.'}"
    let strData = (str as NSString).dataUsingEncoding(NSUTF8StringEncoding)
    let cachePolicy = NSURLRequestCachePolicy.ReloadIgnoringLocalCacheData

    let url = NSURL(string: "web hook url (leaving it out for privacy reasons")

    var request = NSMutableURLRequest(URL: url!, cachePolicy: cachePolicy, timeoutInterval: 2.0)

    request.HTTPMethod = "POST"
    request.HTTPBody = strData
    println("printing to slack")
    var error : NSError? = nil
    if let data = NSURLConnection.sendSynchronousRequest(request, returningResponse: nil, error: &error) {
        let results = NSString(data:data, encoding:NSUTF8StringEncoding)
        println(results)
    }
    else
    {
        println("data invalid")
        println(error)
    }

所以当我运行这段代码时,我不会出错。但是当我打印结果时,它说“有效负载不是有效的 JSON”

最佳答案

Slack 期望在 JSON 上使用双引号。您得到的结果是 Slack 拒绝了您当前形成的 JSON。

这是我自己的代码,它可以让您合并各个字段的变量值,我认为这是您的下一步。

let channel = "#bottest"
let username = "garrettogrady"
let text = "This post is coming from swift."
let payload = "payload={\"channel\": \"\(channel)\", \"username\": \"\(username!)\", \"text\": \"\(text)\""}"

编辑:这个问题启发了我创建一个对象来实现 Slack webhook API。这是给任何感兴趣的人的:https://github.com/pfj3/SwiftSlackbots

关于ios - (有效负载不是有效的 JSON)尝试快速打印到空闲空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30200622/

相关文章:

objective-c - 如何从另一个 View 更改文本字段的文本

ios - HKBiologicalSexObject.biologicalSex 返回 HKBiologicalSex 而不是 .Male 或 .Female

ios - 在 Swift 的 UITableViewCell 中同步滚动 UICollectionViews

python - 使用 Slack Python Webhook API 回复线程

slack-api - 如何查找(并可能删除)个人文件

ios - 尝试设置 UILabel 的文本时 UIImage 消失

iOS Swift 使用 Alamofire 上传 PDF 文件(多部分)

swift - 如何在SwiftUi中创建多行TextField?喜欢记事应用?

javascript - Google 应用程序脚本 - 函数返回未定义

iphone - 如何在将新行添加到 UITextView 实例时向上 ScrollView ?