Ошибка при отправке sms с помощью java с помощью way2sms.com как getactionstring не удалось!
Java-программа для отправки sms с помощью доступа way2sms.com site.it woks корректен для входа в систему и успешно входит в систему ,но показывает ошибку при отправке sms.
Что я уже пробовал:
Я тоже попробовал изменить url-адрес,но это не сработало...
вот этот метод,
частный недействительными getActionString()
{
URLConnector.подключить (с"HTTP://" + сайт + "/ОСП/такое инстантсмс.ОСП", ложные,
"GET", cookie, null);
responseCode = URLConnector.getResponseCode();
System.out.println(responseCode);
System.out.println(HttpURLConnection.HTTP_MOVED_TEMP);
System.out.println(HttpURLConnection.HTTP_OK);
if (responseCode == HttpURLConnection.HTTP_MOVED_TEMP
|| responseCode == HttpURLConnection.HTTP_OK || responseCode == HttpURLConnection.HTTP_MOVED_PERM) {
Строка str = URLConnector.getResponse();
Строки астр = "имя=\"\ акция" ИД=\"действия\"";
int aStrLen = длина астр.();
ул. индекса инт=.метод indexOf(астр);
Системы.из.ул. код println();
Системы.из.код println(астр);
если (индекс > 0) {
ул. ул. =.подстрока(индекс + aStrLen);
ул. индекс =.помощи indexOf("\"");
если (индекс > 0) {
str = str.подстрока(индекс + 1);
ул. индекс =.помощи indexOf("\"");
если (индекс > 0)
actionStr = str.substring(0, индекс);
//actionStr="один";
}
}
} else{System.out.println(actionStr); exit("getActionString failed!");}
URLConnector.disconnect();
}
Mehdi Gholam
Попробуйте прочитать сообщение об ошибке.
Member 13567425
Здравствуйте,сэр, спасибо за ответ,
я не собираюсь на самом деле то, что вы говорите..
Mehdi Gholam
Прочтите код ответа и сообщение об ошибке с сервера.
Member 13567425
public static int getResponseCode()
{
int responseCode = -1;
if(connection != null)
{
пробовать
{
responseCode = connection.getResponseCode();
}
поймать(исключение исключение)
{
System.err.println("ошибка кода ответа");
}
}
return responseCode;
}
публичная статическая строка getResponse()
{
То StringBuilder ответ новое окно инструментов();
if(connection != null)
{
пробовать
{
InputStream is = connection.getInputStream();
BufferedReader rd = new BufferedReader(new InputStreamReader(is));
Строка строка;
в то время как((строка = РД.с readline()) != нуль)
{
response.append(строка);
ответ.функции append('\Р');
}
РД.рядом();
}
поймать(исключение исключение)
{
System.err.println("ошибка ответа");
}
}
ответный ответ.toString();
}
публичная статическая строка getErrorMessage()
{
То StringBuilder сообщение об ошибке новое окно инструментов();
if(connection != null)
{
пробовать
{
Потока Эс = связи.getErrorStream();
BufferedReader rd = новый BufferedReader(новый InputStreamReader(es));
Строка строка;
в то время как((строка = РД.с readline()) != нуль)
{
errorMessage.append(строка);
сообщение об ошибке.функции append('\Р');
Richard MacCutchan
Что такое сообщение об ошибке? Как может кто-то здесь догадаться, что происходит не так, не имея надлежащих деталей?
Member 13567425
Здравствуйте,сэр, Спасибо за ответ,я получаю ошибку от этого метода,
я получаю ошибку "getActionString failed!"
частный недействительными getActionString()
{
URLConnector.подключить (с"HTTP://" + сайт + "/ОСП/такое инстантсмс.ОСП", ложные,
"GET", cookie, null);
responseCode = URLConnector.getResponseCode();
if (responseCode == HttpURLConnection.HTTP_MOVED_TEMP
|| responseCode == HttpURLConnection.HTTP_OK) {
Строка str = URLConnector.getResponse();
Строки астр = "имя=\"\ акция" ИД=\"действия\"";
int aStrLen = длина астр.();
ул. индекса инт=.метод indexOf(астр);
если (индекс > 0) {
ул. ул. =.подстрока(индекс + aStrLen);
ул. индекс =.помощи indexOf("\"");
если (индекс > 0) {
str = str.подстрока(индекс + 1);
ул. индекс =.помощи indexOf("\"");
если (индекс > 0)
actionStr = str.substring(0, индекс);
}
}
} еще
exit("getActionString не удалось!");
URLConnector.disconnect();
}
//** я попытался изменить url-адрес на этот
URLConnector.подключить (с"HTTP://" + сайт + "/Главная.действий?Token=" + token, false,"GET", cookie, null);
теперь он не показывает эту ошибку, но есть еще одна ошибка ,то есть отсутствует строка действия, ошибка кодирования что-то такое....
это происходит, когда я вызываю этот метод отсюда..
private void sendSMS(String receiversMobNo, String msg)
{
getActionString();
учетные данные.сбросить();
учетные данные.комплект("HiddenAction", "такое инстантсмс");
credentials.set("t_15_k_5", random1);
учетные данные.добавить("catnamedis", "день рождения");
if (actionStr != null)
credentials.append("действие", actionStr);
еще
exit("строка действия отсутствует!");
credentials.append("chkall", "on");
credentials.append(random1, token);
credentials.append("MobNo", receiversMobNo);
учетные данные.добавить("текстовая область", МСГ);
userCredentials = credentials.getUserCredentials();
//URLConnector.подключить (с"HTTP://" + сайт + "/Главная.действия", правда,"пост", печенье, userCredentials);//quicksms.действие
URLConnector.подключить (с"HTTP://" + сайт + "/Главная.действий?Token=" + token, true,"POST", cookie, userCredentials);
responseCode = URLConnector.getResponseCode();
..............}
Richard MacCutchan
Это сообщение об ошибке создается вашим кодом, поэтому вам нужно отладить код, чтобы понять, почему.
Member 13567425
спасибо, сэр,за ответ,
я получаю ... >
name="Action" id="действие"
Ошибка кодирования
Строка действия отсутствует!
->Как ошибка
ошибка кодирования msg производится следующим методом..getUTF8String()
учетные данные открытого класса {
private ArrayList<string> list = новый ArrayList<string>();
public void set(имя строки, строковое значение) {
Буфер то StringBuilder новое окно инструментов();
buffer.append(имя);
buffer.append("=");
буфер.добавить(getUTF8String(значения));
добавлю(буфер.метод toString());
}
public void append(имя строки, строковое значение) {
Буфер то StringBuilder новое окно инструментов();
буфер.добавить("&амп;");
buffer.append(имя);
buffer.append("=");
буфер.добавить(getUTF8String(значения));
добавлю(буфер.метод toString());
}
private void add(String item) {
список.добавить(пункт);
}
частная строка getUTF8String(строковое значение) {
Строка encodedValue = null;
пробовать {
encodedValue = URLEncoder.encode(значение, "UTF-8");
} catch (исключение exception) {
System.err.println("ошибка кодирования");
}
вернуться encodedValue;
}
Richard MacCutchan
Ну, опять же, мы не можем догадаться, откуда берется эта ошибка. Если ошибка происходит из вашего кода, то вы будете знать, как ее исправить. Если ошибка вызвана системным вызовом s, то предоставьте полную информацию. Если ошибка исходит от веб-сайта, который обрабатывает запрос, то обратитесь в службу поддержки на этом сайте.