Я целый день пытался выяснить, как написать облачную функцию, которая выполняет POST-вызов на другой сервер, требующий имя пользователя и пароль ...
У меня есть свой оригинальный код в swift:
NSURL *url = [NSURL URLWithString:"https://myserver.com/mypath/"];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
[request setHTTPMethod:@"POST"];
NSString *data = [NSString stringWithFormat:service_request, myDevice, myPath];
[request setHTTPBody:[data dataUsingEncoding:NSUTF8StringEncoding]];
provisionDeviceConnection = [NSURLConnection connectionWithRequest:request delegate:self];
[provisionDeviceConnection start];
И до сих пор есть это в моей облачной функции:
Parse.Cloud.define("getMyDevice", function(request, response){
var service_request = "<request version=\"1.0\"><file_system cache=\"false\"><targets><device id=\"xxx\"/></targets><commands><get_file path=\"myfile.json\"/></commands></file_system></sci_request>";
return Parse.Cloud.httpRequest({
method: "POST", url: "https://MYSERVER.COM/MYPATH/", headers: { },
body: service_request
}).then(function(httpResponse) {
response.success("Done Http Request!");
}, function(httpResponse) {
response.error('request failed with response code ' + httpResponse.status);
});
});
Не уверен, как / где использовать имя пользователя и пароль
Я пробовал разные варианты, нополучить ошибку 400. Не уверен, следует ли использовать тело таким же образом или нет ...
Любая помощь будет принята с благодарностью!