Я пытаюсь подключиться к Google Cloud IoT, используя Rad Studio Xe10.1, используя следующий код Delphi.Когда я пытаюсь выполнить, у меня появляется ошибка в исключении:
HTTP / 1.1 403 Запрещено
В чем может быть проблема?Я пытался следовать инструкциям Google для подключения.
Я пробовал curl (из Git для Windows), и он работает для того же JWT (веб-токена JSON) и для того же URL.
curl -H "authorization: Bearer $JWT" -H "cache-control: no-cache" $sURL
где $JWT
- это мой сгенерированный JWT, а $sURL
- это URL-адрес моего проекта IoT.
Try
httpResponse := '';
HTTP := TidHTTP.Create(Application);
with HTTP do
begin
IOHandler := TIdSSLIOHandlerSocketOpenSSL.Create(Nil);
Request.CustomHeaders.FoldLines := False;
Request.CustomHeaders.AddValue('authorization', 'Bearer '+jwt);
//Request.CustomHeaders.AddValue('content-type', 'application/json');
Request.CustomHeaders.AddValue('cache-control', 'no-cache');
httpResponse := Get(sURL);
end;
except
on E: Exception do
ShowMessage(E.Message);
end;
Finally
Memo.Lines.Add(httpResponse);
End;