我有一个API调用函数,我一直在少数项目中使用。
在添加常用API调用函数后创建的新项目中发生此错误。
即使错误信息没有意义,这应该可行:
static func callPost(url:String, params:[String:Any], finish: @escaping ((message:String, data:Data?)) -> Void)
{
let theUrl = URL(string: url)!
var request = URLRequest(url: theUrl)
request.httpMethod = "POST"
let postString = self.getPostString(params: params)
request.httpBody = postString.data(using: .utf8)
var result:(message:String, data:Data?) = (message: "Fail", data: nil)
let task = URLSession.shared.dataTask(with: request) { data, response, error in
if(error != nil)
{
result.message = "Fail Error not null : \(error.debugDescription)"
}
else
{
result.message = "Success"
result.data = data
}
finish(result)
}
task.resume()
}
注意:
我已经检查了旧项目(我从中复制了此代码),它仍然可以运行并构建得很好。
我正在使用Xcode 9.3.1和Swift 4.1
答案 0 :(得分:0)
如果您查看突出显示,那么您尝试写入的>>> s = 'αa'
>>> a = np.array(list(s.encode('utf8')),dtype=np.int8)
>>> b = np.array(a,dtype=np.uint32)
>>> b
array([4294967246, 4294967217, 97], dtype=uint32)
>>> for c in b: print(hex(c))
...
0xffffffce
0xffffffb1
0x61
类型是由您定义的,并且与Data
基金会的Data
类型不同回报。您需要删除自己的URLRequest
类型,然后使用基金会的Data
代替。
另外作为旁注,我猜你正在比较"成功"并且"失败"在其他地方,这有点不好,这是枚举的理想用例。这是一种更清洁的方法:
Data