Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/108.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios Swift Alamofire HTTP Get请求_Ios_Swift_Alamofire - Fatal编程技术网

Ios Swift Alamofire HTTP Get请求

Ios Swift Alamofire HTTP Get请求,ios,swift,alamofire,Ios,Swift,Alamofire,请求代码: static func testRequest() { Alamofire.request(Constants.baseURL, method: .get, parameters: ["data": "contentperson son"]).response { response in print("Request: \(response.

请求代码:

static func testRequest() {
        Alamofire.request(Constants.baseURL,
                          method: .get,
                          parameters: ["data": "contentperson son"]).response { response in
            print("Request: \(response.request)")
            print("Response: \(response.response)")
            print("Error: \(response.error)")

            if let data = response.data, let utf8Text = String(data: data, encoding: .utf8) {
                print("Data: \(utf8Text)")
            }
        }
    }
资料来源:

我有麻烦了。请求应该使用
data:contentperson-son
作为请求主体,但它似乎不是。我没有返回
JSON
对象。连接是100%与服务器建立的,但它似乎不理解我的请求。发送此请求的python程序不会返回信息

请求返回:

Request: Optional(URL?data=contentperson%20son)
Response: Optional(<NSHTTPURLResponse: 0x600000833dc0> { URL: URL?data=contentperson%20son } { Status Code: 200, Headers {
    Connection =     (
        "keep-alive"
    );
    "Content-Encoding" =     (
        gzip
    );
    "Content-Type" =     (
        "text/html; charset=utf-8"
    );
    Date =     (
        "Wed, 18 Jul 2018 16:58:48 GMT"
    );
    Server =     (
        "nginx/1.10.3 (Ubuntu)"
    );
    "Transfer-Encoding" =     (
        Identity
    );
    "X-Frame-Options" =     (
        SAMEORIGIN
    );
} })
Error: nil
Data: The request data is empty.

我不使用Alamofire,但我认为swift脚本工作正常。通过直接请求进行特定测试,例如:

    let url = "http://...?..."
    if let myUrl = URL(string: url)
    {
        URLSession.shared.dataTask(with: myUrl)
        {
            (data, response, err) in

            if let data = data
            {
                let dataString = String(data: data, encoding: .utf8)
                ...
            }
        }.resume()
    }
正如Lame所说,GET请求只是一个包含查询(?)的URL。 存在HttpBody时使用POST请求。一个常见的用途是发送敏感信息-例如密码,通常参数会像GET查询一样发送(例如x=23&y=45&z=elephant…)

所以我猜DJANGO逻辑有问题。我也不熟悉,但是请求。对于GET请求,body似乎是错误的。(不过,在POST请求中对其缺席的测试是正确的)。我猜您想解析查询…

试试这个。。。
Try this ...

Alamofire.request(url)
                .responseJSON { (response:DataResponse<Any>) in
    switch(response.result) {
                    case .success(_):
                    break

                    case .failure(_):

                    break
                    }
}
Alamofire.request(url) .responseJSON{(响应:DataResponse)位于 开关(response.result){ 成功案例: 打破 案例.失败(uu): 打破 } }
什么是响应和错误日志打印?我不知道Django,但通常在GET请求中,您不会将值放入
myURLrequest.httpBody
,但它们位于URL(查询)中。事实证明,我最大的问题是我的同事没有通过JSON或类似的方式发送数据。我和她一起工作,在我的工作期结束之前,我提出了一个初步的解决方案。
Try this ...

Alamofire.request(url)
                .responseJSON { (response:DataResponse<Any>) in
    switch(response.result) {
                    case .success(_):
                    break

                    case .failure(_):

                    break
                    }
}