Построение HTTP POST-запроса для регистрации принтера с помощью сервиса Google Cloud Print

Я пытаюсь зарегистрировать принтер в службе Google Cloud Print с помощью API регистрации по адресу:

https://developers.google.com/cloud-print/docs/proxyinterfaces#register

Я пытаюсь отправить HTTP-запрос POST с помощью клиентской библиотеки Google API для c ++.

Вот мой исходный код:

void IllustratePostWithData(const char* url, HttpTransport* transport){

scoped_ptr<HttpRequest> request(transport->NewHttpRequest(HttpRequest::POST));
request->AddHeader("X-CloudPrint-Proxy", "my proxy");
request->set_content_type("multipart/form-data; boundary=-----------RubyMultipartPost");
request->set_url(url);
util::Status status = request->Execute();
if (!status.ok())
cerr << status.error_message();

HttpResponse *response = request->response();
if (response->ok()) {
cout << "Success" << endl;
} else {
cout << "Failed with status=" << response->status().error_message() << endl;
}
string body;
util::Status stat = response->GetBodyString(&body);
cout << "Received HTTP status code =" << response->http_code() << endl;
if (stat.ok()) {
cout << "HTTP body" << body << endl;
}
}

int main() {
char* Cloud_print_url = "https://www.google.com/cloudprint/register";
scoped_ptr<HttpTransport> transport;

HttpTransportFactory* factory = new CurlHttpTransportFactory();
HttpTransport* globalTransport = factory->New();

IllustratePostWithData(Cloud_print_url, globalTransport);
return 0;
}

Я получаю следующий ответ:

Success
Received HTTP status code =200
HTTP body{
"success": false,
"message": "Proxy ID is required.",
"request": {
"time": "0",
"params": {
}
},
"errorCode": 115
}

Проходя через API, я не смог найти функцию для установки прокси. Я что-то упускаю в запросе HTTP POST?

Спасибо

0

Решение

Задача ещё не решена.

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


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