sql >> Databáze >  >> RDS >> Mysql

JSON zobrazuje chybu 403 při pokusu o načtení dat z databáze v systému Android

Nápověda z tohoto příspěvku , Myslím, že možná budete muset nastavit User-Agent záhlaví ve vašem požadavku JSON. Zkuste přidat řádek do JSONFunction.makeHttpRequest() před voláním funkce execute() jako:

httpPost.setHeader("User-Agent","Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.81 Safari/537.36");

nebo na řádku před voláním setEntity() můžete udělat něco jako:

para.add(new NameValuePair("User-Agent","Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.81 Safari/537.36"));

(Poznámka:Tento řetězec user-agent je pouze řetězec, který jsem vytáhl ze svého prohlížeče. Pravděpodobně jej můžete použít v jakémkoli moderním prohlížeči.)

Díky tomu bude vaše služba REST věřit, že požadavek přichází z webového prohlížeče. Mám podezření, že to je to, co může způsobovat 403, tj. že váš webový server neví, od jakého agenta požadavek přichází. Pokud jde o to, proč to právě přestalo fungovat, možná byl server, na kterém běží vaše služba PHP, nedávno aktualizován, takže nebude přijímat požadavky, kde není deklarován user-agent.




  1. Jak nainstalovat ArangoDB na Ubuntu 20.04

  2. 2 způsoby, jak vytvořit tabulku, pokud na serveru SQL neexistuje

  3. Kvůli chybě syntaxe se v DB nevytváří tabulka

  4. Nelze provést více dotazů MariaDB pomocí PHP