я смог получить данные из запроса GET вчера, но сегодня, если я называю тот же апи я получаюjava.io.FileNotFoundException для URL, который работал отлично вчера
java.io.FileNotFoundException: https://api.quikr.com/jobs/v1/zwayam/application?companyName=test&jobId=123
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection$10.run(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection$10.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at sun.net.www.protocol.http.HttpURLConnection.getChainedException(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(Unknown Source)
at com.zwayam.controller.QuikrDataPoint.getJobApplicationForQuikrJobs(QuikrDataPoint.java:162)
at com.zwayam.controller.QuikrDataPoint.main(QuikrDataPoint.java:54)
Вызванный: Java .io.FileNotFoundException: https://api.quikr.com/jobs/v1/zwayam/application?companyName=test&jobId=123 at sun.net.www.protocol.http.HttpURLConnection.getInputStream0 (Неизвестный источник) at sun.net.www.protocol.http.HttpURLConnection.getInputStream (Неизвестный источник) на java.net. HttpURLConnection.getResponseCode (неизвестный источник) на sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode (неизвестный источник) на com.zwayam.controller.QuikrDataPoint.getJobApplicationForQuikrJobs (QuikrDataPoint.java:159) ...-более
Я не могу получить доступ к этому API непосредственно в браузере соге есть некоторые заголовки приложений, которые будут установлены ли это кодирование проблема или проблема api?
String urlstr = "https://api.quikr.com/jobs/v1/zwayam/application?";
List<NameValuePair> params = new LinkedList<NameValuePair>();
params.add(new BasicNameValuePair("companyName", "test"));
params.add(new BasicNameValuePair("jobId", "123"));
String paramString = URLEncodedUtils.format(params, "utf-8");
url = new URL(urlstr + paramString);
connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
connection.setDoOutput(true);
connection.setRequestProperty("Accept", "application/json");
System.setProperty("http.agent", "");
Calendar cal = Calendar.getInstance();
SimpleDateFormat format = new SimpleDateFormat("YYYY-MM-dd");
String todaysDate = format.format(cal.getTime());
String emailId = "[email protected]";
String data = appId + emailId + todaysDate;
SecretKeySpec signingKey = new SecretKeySpec(tokenKey.getBytes(), "HmacSHA1");
Mac mac = Mac.getInstance("HmacSHA1");
mac.init(signingKey);
String signature = toHexString(mac.doFinal(data.getBytes()));
connection.setRequestProperty("Content-Type", "application/JSON");
connection.setRequestProperty("X-Quikr-App-Id", "890");
connection.setRequestProperty("X-Quikr-Token-Id", tokenId.toString());
connection.setRequestProperty("X-Quikr-Signature-v2", signature);
connection.setRequestProperty("User-Agent", "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.4; en-US; rv:1.9.2.2) Gecko/20100316 Firefox/3.6.2");
int responseCode = connection.getResponseCode();
Это раздел, который вызывает API, код ответа я получаю 404
Я думаю, что нам нужно увидеть QuikrDataPoint.java:162, но обычно FileNotFound означает только одно: –
* Код ответа, который я получаю, составляет 404 * Ваша история изменилась. Конечно, вы знаете, что означает '404' –