Как получить опубликованную строку из приложения iPhone на стороне сервера - PullRequest
1 голос
/ 03 мая 2011

Я новичок в веб-сервисах для iPhone, и у меня есть быстрый вопрос.Я хочу отправить некоторые значения до моего php-скрипта на сервер, однако, поскольку существует так много значений, я не хочу включать их в фактический URL (доступ к ним осуществляется в $ _GET в PHP).Я хочу отправить строку XML, которая позволит моему сценарию PHP получить все данные и обработать их.До сих пор у меня есть следующий шаблон для отправки данных:

NSURL *someURL = ...
NSString *xmlString = @"This would be the entire XML message";
NSData *data = [xmlString dataUsingEncoding:NSUTF8StringEncoding];
NSMutableURLRequest *req = [NSMutableURLRequest requestWithURL:someURL cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:90];

[req setHTTPBody:data];
[req setHTTPMethod:@"POST"];

Теперь я понимаю, что это отправит XML в скрипт PHP.Мой вопрос заключается в том, как мне получить это на стороне сервера ... каким будет значение $ _POST ['?????']?

Спасибо

Ответы [ 2 ]

0 голосов
/ 03 мая 2011

Вы можете прочитать:

$HTTP_RAW_POST_DATA

или сделайте:

$rawPost = file_get_contents("php://input");

Из руководства:

php: // input позволяет читать raw данные из тела запроса. В случае POST-запросы, предпочтительнее $ HTTP_RAW_POST_DATA, поскольку это не так зависит от специальных директив php.ini. Более того, для тех случаев, когда $ HTTP_RAW_POST_DATA не заполнен по умолчанию это потенциально меньше интенсивная память альтернатива активируя always_populate_raw_post_data. php: // вход недоступен с ENCTYPE = "многочастному / форм-данных".

Для получения дополнительной информации, проверьте:

http://php.net/manual/en/wrappers.php.php

http://php.net/manual/en/reserved.variables.httprawpostdata.php

0 голосов
/ 03 мая 2011

Вы можете сделать print_r($_REQUEST), чтобы просмотреть все переменные GET / POST.

Поскольку вы вызываете страницу напрямую, я бы, вероятно, установил быстрый скрипт для записи данных в файл, когда страницаназывается.

...