Как получить параметры из AFNETWORKING POST

Как я могу получить значения параметров из Swift, загрузка файла уже работает, я пробовал $ _GET [«familyId»], но это не сработало?

Swift:

    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)")
})

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",
]);

8

Решение

Проблема, с которой вы сталкиваетесь, заключается в том, что вы ищете не в том месте. Как вы уже сказали, вы используете метод POST AFNetworking для POST-данных. Акцент на пост. GET и POST — две совершенно разные вещи. GET используется для получения значений, хранящихся в URL, таких как www.example.com/example-get.php?key1=value1&key2=value2, Вы получите доступ к различным значениям в PHP, выполнив $_GET['key1'], POST это что-то другое. Это отправляется вместе с телом HTTP-сообщения, и его нельзя увидеть в истории просмотра или в URL. Вы сможете получить доступ к своим данным с помощью $_POST['familyId'], Я бы посоветовал прочитать в нем немного больше, поэтому я предоставлю этот начать с.

Удачи вам.

7

Другие решения

Ваша главная проблема в том, что переменные находятся в $_POST и вы ищете в $_GET,

Из кода видно, что данные отправляются в теле сообщения запроса. Это в основном то, что сказал jkaufman в своем ответе.

Попробуйте какой-нибудь вариант:

<?php
$FamilyID = $_POST['familyId'];
// ... do stuff with it ...
?>

Вы можете найти эти ссылки информативными (поскольку вы запросили достоверные и / или официальные источники).

1

По вопросам рекламы [email protected]