如何从AFNETWORKING POST获取参数

Mas*_*ard 8 php afnetworking swift

如何从Swift获取参数值,文件上传已经有效,我已经尝试了$ _GET ["familyId"],但它没有用?

迅速:

    let manager = AFHTTPRequestOperationManager()
    let url = "http://localhost/test/upload.php"
    var fileURL = NSURL.fileURLWithPath(NSBundle.mainBundle().pathForResource("test_1", ofType: "mov")!)
    var params = [
        "familyId":locationd,
        "contentBody" : "Some body content for the test application",
        "name" : "the name/title",
        "typeOfContent":"photo"
    ]

    manager.POST( url, parameters: params,
        constructingBodyWithBlock: { (data: AFMultipartFormData!) in
            println("")
            var res = data.appendPartWithFileURL(fileURL, name: "fileToUpload", error: nil)
            println("was file added properly to the body? \(res)")
        },
        success: { (operation: AFHTTPRequestOperation!, responseObject: AnyObject!) in
            println("Yes thies was a success")
        },
        failure: { (operation: AFHTTPRequestOperation!, error: NSError!) in
            println("We got an error here.. \(error.localizedDescription)")
    })
Run Code Online (Sandbox Code Playgroud)

PHP:

 $target_dir = "uploads/";
 $target_dir = $target_dir . basename($_FILES["fileToUpload"]["name"]);

 if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_dir)) {
echo json_encode([
    $user_info;
    "Message" => "The file ". basename( $_FILES["fileToUpload"]["name"]). " has been uploaded.",
    "Status" => "OK",
     ]);
Run Code Online (Sandbox Code Playgroud)

Jef*_*rey 7

你面临的问题是你看错了地方.正如您所说,您正在使用AFNetworking的POST方法来发布数据.强调POST.GET和POST是两个完全不同的东西.GET用于检索存储在url中的值,例如www.example.com/example-get.php?key1=value1&key2=value2.您可以通过执行来访问PHP中的不同值$_GET['key1'].POST是不同的东西.这与HTTP消息正文一起发送,不能在浏览历史记录或URL中看到.您可以使用以下方式访问您的数据$_POST['familyId'].我建议稍微阅读一下,所以我会提供这个开头.

祝你好运.