Swift Alamofire POST请求变为GET

pom*_*nto 3 post get http swift alamofire

这是我用来向localhost中的Flask服务器发出POST请求的代码:

func data_request() {
    let url:NSURL = NSURL(string: "http://192.168.1.192:9880/api/register")!

    Alamofire.request(.POST, url, parameters: ["login":"login", "password" : "12345"]).responseJSON { response in
        switch response.result {
        case .Success:
            NSLog("Validation Successful")
        case .Failure(let error):
            NSLog("\(error), \(String(data: response.data!, encoding: NSUTF8StringEncoding))")
            return
        }
        if (response.result.value as? [String: AnyObject]) != nil{
            print(response.result.value)
        } 
    }
}
Run Code Online (Sandbox Code Playgroud)

但它发送GET请求!服务器和本地代理都告诉它是GET请求 - 这是Burp拦截的:

GET /api/register/ HTTP/1.1
Host: 192.168.1.192:9880
Accept: */*
User-Agent: Project Manager/Roman-Nikitin.Project-Manager (1; OS X 10.11.3)
Accept-Language: en;q=1.0, fr;q=0.9, de;q=0.8, zh-Hans;q=0.7, zh-Hant;q=0.6, ja;q=0.5
Accept-Encoding: gzip;q=1.0, compress;q=0.5
Connection: close
Run Code Online (Sandbox Code Playgroud)

小智 5

我有同样的问题,你只需要放在/URL的末尾.我想问题是在Alamofire.它的工作原理与怪异从正常的服务器重定向www.domain.com/somethingwww.domain.com/something/