#android #httpsurlconnection
#Android #httpsurlconnection
Вопрос:
Я работаю над приложением, в котором мне нужно проанализировать сторонний веб-сайт после входа на него. Где https://customer.onlinelic.in/LICEPS/appmanager/Agent/AgentHome
находится домашняя страница после входа в систему. Отсюда на странице ответа есть несколько ссылок, где я анализирую и делаю запрос к каждой из этих ссылок.Одна из ссылок ведет меня на страницу, где я должен ввести некоторые входные данные и отправить форму, и она возвращает мне некоторые данные на основе входных данных.
Если я сделаю это в Web, результат будет в порядке. Но если я запрашиваю тот же URL-адрес с Android, используя HttpUrlConnection
ответ, который приходит совершенно другим, фактически он возвращает вышеупомянутую страницу, которая является домашней страницей.
Если я выполняю запрос в Android с теми же параметрами запроса и допустимым идентификатором сеанса и допустимыми входными параметрами, ответ приходит по-другому. Код ответа правильный, но содержимое ответа неправильное.
Я проверил все заголовки и параметры, но бесполезно. Может ли кто-нибудь сказать мне, что может быть причиной получения разных ответов.
РЕДАКТИРОВАТЬ Вот мой код для запроса
public String initiateRequest(String url, String payload, String referer, String requestType)
{
String response = null;
try
{
URL urls = new URL(url);
HttpsURLConnection urlconn = (HttpsURLConnection) urls.openConnection();
urlconn.setDoInput(true);
urlconn.setDoOutput(true);
urlconn.setRequestMethod(requestType);
urlconn.setConnectTimeout(30000);
urlconn.setReadTimeout(30000);
urlconn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
if (!referer.equalsIgnoreCase("")){
urlconn.setRequestProperty("referer", "https://customer.onlinelic.in/LICEPS/appmanager/Agent/AgentHome?_nfpb=trueamp;_windowLabel=Agent_policy_tracker_portletamp;Agent_policy_tracker_portlet_actionOverride=/portlets/agent/AgentPolicyTracker/begin");
urlconn.setRequestProperty("User-Agent","Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143 Safari/537.36");
urlconn.setRequestProperty("Accept","text/html,application/xhtml xml,application/xml;q=0.9,image/webp,*/*;q=0.8");
// urlconn.setRequestProperty("Accept-Encoding","gzip, deflate, br");
urlconn.setRequestProperty("Accept-Language","en-GB,en;q=0.8,en-US;q=0.6,fr;q=0.4");
urlconn.setRequestProperty("Cache-Control","max-age=0");
}
OutputStream os = urlconn.getOutputStream();
BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(os));
writer.write(payload);
writer.close();
os.close();
response = ServiceNetworkCommunicator.readDataFromInputStream(urlconn.getInputStream());
} catch (Exception e) {
e.printStackTrace();
}
return response;
}
Сеансом управляет CookieHandler
Комментарии:
1. где ваш код?
2. добавлен код запроса @petey