Podpowiedź z tego postu , myślę, że może być konieczne ustawienie User-Agent
nagłówek w żądaniu JSON. Spróbuj dodać linię w JSONFunction.makeHttpRequest()
przed wywołaniem execute()
jak:
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");
lub na linii przed wywołaniem setEntity()
możesz zrobić coś takiego:
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"));
(Uwaga:ten ciąg agenta użytkownika to tylko ten, który wyciągnąłem z mojej przeglądarki. Prawdopodobnie możesz użyć go z dowolnej nowoczesnej przeglądarki.)
Dzięki temu Twoja usługa REST uzna, że żądanie pochodzi z przeglądarki internetowej. Podejrzewam, że to może być przyczyną 403, tj. Twój serwer sieciowy nie wie, od jakiego rodzaju agenta pochodzi żądanie. Jeśli chodzi o to, dlaczego właśnie przestał działać, być może serwer, na którym działa twoja usługa PHP, został niedawno zaktualizowany, aby nie akceptował żądań, w których klient użytkownika nie jest zadeklarowany.