2016-02-19 2 views
1

Есть ли возможность отправить массив массивов в виде пост-данных через функцию QNetworkAccessManager :: post?QNetworkAccessManager массив массивов после данных

Я отправляю это на мой сайт:

QUrl login; 
login.addQueryItem("name", "MyName"); 
login.addQueryItem("password", "CoolPassword"); 

QNetworkRequest oRequest("127.0.0.1/xampp/test.php"); 
m_oManager.post(oRequest, login.encodedQuery()); 

Какие результаты в следующих POST-данных, полученных с помощью моего тест-Webseite:

#var_dump($_POST); 
array(2) 
{ 
    ["name"]=> string(6) "MyName" 
    ["password"]=> string(12) "CoolPassword" 
} 

Это то, что я ожидал. Но сайт я пытаюсь разобрать требует POST-данных, который выглядит следующим образом:

#var_dump($_POST); 
array(2) 
{ 
    ["_method"]=> string(4) "POST" 
    ["data"]=> array(1) 
    { 
    ["world"]=> array(1) 
    { 
     ["Account"]=> array(2) 
     { 
     ["name"]=> string(6) "MyName" 
     ["password"]=> string(12) "CoolPassword" 
     } 
    } 
    } 
} 

Как я создать эту структуру? Возможно ли это с помощью QNetworkAccessManager?

ответ

0

После того, как вы немного разобрались и прочитали веб-сайт-http-код, я нашел решение.

QUrl login; 
login.addQueryItem("_method", "POST"); 
login.addQueryItem("data[world][Account][name]", "MyName"); 
login.addQueryItem("data[world][Account][password]", "CoolPassword");