Перейти к содержанию
    

HTTP 1.1 + SIM300

Добрый день.

 

Пытаюсь соединится с сервером по IP, но никак не могу разобратся что пересилать по протоколу HTTP 1.1

 

Формат следующий:

at+cipstart="tcp","АЙПИ","80"

at+cipsend

>GET /test/Data?dat=test

ctrl+z

 

send ok

 

и ничего ни в ответ на на сервере.

 

где-то прочитал что просто GET не досточно, пробывал

 

>GET /test/Data?dat=test

Accept: */*

host: АЙПИ

ctrl+z

 

результат одинаковый

 

если совсем уже какую-то билиберду послать, в ответ: АПАЧ такой-то, протокол HTTP 1.1, ошибка такая-то

 

Может я не правильно запросы делаю, или вообще не так с сим300 по этому протоколу работать нужно?

Может кто напишет правильный вариант?

 

Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ещё нужно передавать HTTP заголовки .

GET HTTP/1.1

Host: myserver.com

User-Agent: Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.9b5) Gecko/2008050509 Firefox/3.0b5

Accept: text/html

Connection: close

 

Например.

Host: - имя сайта например.

Прочтите спецификацию на HTTP протокол.

Посмотрите как взаимодействует браузер с веб сервером при помощи сниффера типа Wireshark.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Надо что то вроде

at+cipstart="tcp","АЙПИ","80"

at+cipsend

>GET www.mysite.ru/index.php / HTTP/ 1.1 <возврат каретки><перевод строки>

Host:www.mysite.ru <возврат каретки><перевод строки><возврат каретки><перевод строки>

ctrl+z

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот держи пример 100пудов рабочего заголовка и там же ответ!

 

 

AT+CIPSEND

> GET / HTTP/1.1\n

Connection: Close\n

Authorization: Basic YWRtaW46YWRtaW4=\n

User-Agent: Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.9b5) Gecko/2008050509 Firefox/3.0b5\n

Host: 82.207.127.147:80\n

Accept: */*\n

\n

\n\x1A

SEND OK\n\r

HTTP/1.1 302 Found\n\r

Content-Type: text/html; charset=utf-8\n\r

Connection: close\n\r

Set-Cookie: _atlant-protocol_session=0fb4322b2ec71e6b02a93352c16f494b; path=/\n\r

Status: 302 Found\n\r

X-Powered-By: Phusion Passenger (mod_rails/mod_rack) 2.2.7\n\r

Location: http://82.207.127.147/monitorings\n\r

X-Runtime: 43ms\n\r

Content-Length: 99\n\r

Cache-Control: no-cache\n\r

Server: nginx/0.7.64 + Phusion Passenger 2.2.7 (mod_rails/mod_rack)\n\r

\n\r

You are being <a href="http://82.207.127.147/monitorings">redirected</a>.\n\r

CLOSED\n\r

 

Народ, кто-нибудь отправлял командой AT+CIPSEND более 1 кило, а то в документации пишут но низя!

Изменено пользователем zhan

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо большое. Работает! Правда много всего. Интересно, что из всего этого можно выкинуть, для экономии трафика. Я вот, например оставил только:

GET /блаблабла

GET HTTP/1.1

Host: 92.60.187.9

User-Agent: 5

Accept: text

Connection: close

 

Ну я понимаю, что это еще и от сервера зависит, но тем не менее.

А на счет больше 1Кб пробывал чисто для теста, после превышения 1Кб модуль перестает эхом отвечать, минуту молчит, потом присылает SEND OK. А вообще, я все разбивал по 512 байт. AT+CIPSEND=512

Изменено пользователем mr_freeman

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Интересно, что из всего этого можно выкинуть, для экономии трафика.

Я делал еще проще

GET http://site_name.ru/index.php?get_param=1 HTTP/1.0#013#010
Host: site_name.ru#013#010
#013#010
#026

Host: site_name.ru#013#010 - адрес сервера (хоста) на который будем посылать запрос

GET http://site_name.ru/index.php?get_param=1 HTTP/1.0#013#010 - пример самой строки запроса

 

В данном случае я работал с DNS серверами

AT+CDNSCFG="208.67.222.222","208.67.220.220" //прописываем ДНС

AT+CDNSORIP=1 //Разрешаем работу через ДНС

Этого всего вполне достаточно чтобы получить ответ от сервера

 

Сам не пробовал передавать более 1кБ, но на сколько понял это сделать можно, но при передаче модем будет резать пакеты на куски, и в случае если хоть один пакет не дойдет до сервера, то придется передавать всю посылку заново, поэтому лучше самому позаботиться о разбивке

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Экономия трафика и HTTP - странное желание ))

 

Вообще если сайт на сервере один. то можно и без поклонов апачу обойтись..

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Так будет работать, но не на всех серверах!

Если на сервере несколько доменов, то сервер может не понять к какому именно домену обращаются. Сам лично сталкивался с этим.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

:) это как раз то о чем я пиал. работает только если сайт лежит первым. или он единственный.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...