реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> SIM900->HTTP сервис, метод POST (кто сталкивался)
DrGluck
сообщение Sep 28 2011, 13:27
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 340
Регистрация: 25-11-05
Из: Россия
Пользователь №: 11 361



День добрый !

Имеем : SIM900 (версия - 7), сниффер (SoftPerfect Network Protocol Analyzer) + Fiddler Web Debugger, Indy 10.
Собственно неясность с использованием встроенной реализации HTTP-сервиса, а именно - метод POST.

Последовательность действий - согласно доке от производителя :
AT+SAPBR ... / AT+HTTPINIT / AT+HTTPPARA ... / AT+HTTPDATA=10,1000 /
>DOWNLOAD 1234567890 >OK
AT+HTTPACTION=1 / >HTTPACTION:1,200,0 / AT+HTTPTERM (запись условно-пояснительная)

HTTP-сервер (Indy) реагирует , но собственно данные (1234567890) в (ARequestInfo: TIdHTTPRequestInfo).UnparsedParams отсутствуют.

Анализ пакетов показал, что SIM900 формирует в запросе следующее :
"POST / HTTP/1.1
Host: NN.NNN.NNN.NNN
Accept: */*
Connection: Keep-Alive
User-Agent: SIMCOM_MODULE
Content-Length: 10

1234567890"

Детальное исследование RFC-XXX и исходников Indy - вещь правильная и очевидная если бы не фактор времени.

Эксперимент показал, что если явно определить "Content-Type: application/x-www-form-urlencoded" - то сервер все парсит и данные на месте. Но добавить это поле посредством SIM900 с лету не удалось, точнее была предпринята попытка используя AT+HTTPDATA дописать Content-Type ... увы, ибо Content-Length формируется автоматом. Перекрыть его вторым идентичным полем с иным параметром тоже не удалось ...


Кто-то уже все это победил ? sm.gif




--------------------
"... Ищущий вечно, однажды найдя, то, что искал бесконечно, мимо прошёл, совершенно беспечно, с кем-то о вечном шутя ..."
Go to the top of the page
 
+Quote Post
DrGluck
сообщение Sep 29 2011, 09:11
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 340
Регистрация: 25-11-05
Из: Россия
Пользователь №: 11 361



Проще оказалось самому HTTP "сервис" организовать ...


--------------------
"... Ищущий вечно, однажды найдя, то, что искал бесконечно, мимо прошёл, совершенно беспечно, с кем-то о вечном шутя ..."
Go to the top of the page
 
+Quote Post
firew0rker
сообщение Jun 27 2013, 09:05
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 206
Регистрация: 11-07-12
Из: Новосибирск
Пользователь №: 72 716



У меня похожая проблема.
Передаю данные так:
Код
AT+HTTPINIT
AT+HTTPPARA="CID",1
AT+HTTPPARA="URL","62.231.171.6/priem2.php"
AT+HTTPPARA="CONTENT","application/x-www-form-urlencoded"
AT+HTTPDATA=0108,10000

DOWNLOAD
Date=2013.06.27&Time=00:01&Vmin=000&Vmid=000&Vmax=000&Dir=000&Temp=26.2&U=selestasvz_mysql&P=********&SPOT=1
AT+HTTPACTION=1


Принимается:
Код
POST /priem2.php HTTP/1.1
Accept: */*
User-Agent: SIMCOM_MODULE
Content-Length: 108
Host: 62.231.171.6
Cache-Control: max-age=43200
Connection: keep-alive                                                                                                                                                
                                                                                                                                                                      
Date=2013.06.27&Time=00:01&Vmin=000&Vmid=000&Vmax=000&Dir=000&Temp=26.2&U=selestasvz_mysql&P=sye6tqt2&SPOT=1


Content-type нет в заголовках. Из-за этого сервер не принимает данные. Как сделать чтобы был заголовок Content-type?
Не могу реализовать НТТР-клиент в микроконтроллере. У PIC16F1827 не хватит памяти.
Go to the top of the page
 
+Quote Post
Aner
сообщение Jun 27 2013, 09:28
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 4 869
Регистрация: 28-02-08
Из: СПБ
Пользователь №: 35 463



firew0rker а у вас какая версия прошивки? Тоже 7-я?
НУ и потом НТТР-клиент на мелких процах что-то нереальное. Тут и не каждый арм подойдёт. Не проще ли через ява аплет работать?
Go to the top of the page
 
+Quote Post
firew0rker
сообщение Jun 27 2013, 10:57
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 206
Регистрация: 11-07-12
Из: Новосибирск
Пользователь №: 72 716



Извиняюсь, сразу надо было показать
Код
AT+GSV
SIMCOM_Ltd
SIMCOM_SIM900B
Revision:1137B05SIM900B32_ST

OK


ява аплета нет.
Go to the top of the page
 
+Quote Post
Aner
сообщение Jun 27 2013, 11:24
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 4 869
Регистрация: 28-02-08
Из: СПБ
Пользователь №: 35 463



Так 9 версия как последняя, и Enhance тоже из последних. Перешивать нужно. А аплет на яве самому писать нужно.
Go to the top of the page
 
+Quote Post
Fusion
сообщение Jun 27 2013, 18:21
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 54
Регистрация: 19-07-06
Пользователь №: 18 920



У меня версия:
SIMCOM_SIM900
Revision:1137B12SIM900M64_ST
Post тоже не проходит.
Get нормально.
Go to the top of the page
 
+Quote Post
Aner
сообщение Jun 27 2013, 18:33
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 4 869
Регистрация: 28-02-08
Из: СПБ
Пользователь №: 35 463



QUOTE (Fusion @ Jun 27 2013, 21:21) *
У меня версия:
SIMCOM_SIM900
Revision:1137B12SIM900M64_ST
Post тоже не проходит.
Get нормально.

А на Enhance не пробовали?
Go to the top of the page
 
+Quote Post
Fusion
сообщение Jun 27 2013, 18:53
Сообщение #9


Участник
*

Группа: Участник
Сообщений: 54
Регистрация: 19-07-06
Пользователь №: 18 920



К сожалению у меня нет такой прошивки.
Подскажите где взять Enhance?
Go to the top of the page
 
+Quote Post
Aner
сообщение Jun 27 2013, 19:07
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 4 869
Регистрация: 28-02-08
Из: СПБ
Пользователь №: 35 463



QUOTE (Fusion @ Jun 27 2013, 21:53) *
К сожалению у меня нет такой прошивки.
Подскажите где взять Enhance?

Наверное надо спросить у того, кто продал вам SIM900.
Go to the top of the page
 
+Quote Post
firew0rker
сообщение Jun 29 2013, 04:59
Сообщение #11


Местный
***

Группа: Свой
Сообщений: 206
Регистрация: 11-07-12
Из: Новосибирск
Пользователь №: 72 716



Проблему удалось обойти добавлением в скрипт, принимающий данные, строки
parse_str(file_get_contents("php://input"), $_POST);

В качестве временного решения пока сойдёт. Прошивкой SIM900B так никто и не поделился. Буду рассматривать вопрос о переходе на модули другого производителя, например Sierra Wireless.
Go to the top of the page
 
+Quote Post
alfff
сообщение Jun 29 2013, 08:01
Сообщение #12


Участник
*

Группа: Участник
Сообщений: 37
Регистрация: 1-11-12
Пользователь №: 74 199



Цитата(firew0rker @ Jun 29 2013, 08:59) *
Проблему удалось обойти добавлением в скрипт, принимающий данные, строки
parse_str(file_get_contents("php://input"), $_POST);

В качестве временного решения пока сойдёт. Прошивкой SIM900B так никто и не поделился. Буду рассматривать вопрос о переходе на модули другого производителя, например Sierra Wireless.


Модули SW уже давно не славятся своим качеством, да и цена у них выскоквата. Мой Вам совет, присмотритесь к Телиту или CInterion. С ними проблем вообще нет, особенно с последним.
Go to the top of the page
 
+Quote Post
Aner
сообщение Jun 29 2013, 09:12
Сообщение #13


Гуру
******

Группа: Свой
Сообщений: 4 869
Регистрация: 28-02-08
Из: СПБ
Пользователь №: 35 463



А Quictel чем плох?
Go to the top of the page
 
+Quote Post
sobr
сообщение Jun 29 2013, 09:49
Сообщение #14


Знающий
****

Группа: Свой
Сообщений: 926
Регистрация: 18-01-07
Пользователь №: 24 552



Цитата(alfff @ Jun 29 2013, 15:01) *
Модули SW уже давно не славятся своим качеством...
Да ну. И какие же у вас нарекения имеются в адрес SW? Просто я с этими модулями работаю, и не хочется наступать на грабли.
Цитата(alfff @ Jun 29 2013, 15:01) *
... да и цена у них выскоквата.
Как надоели уже эти сказки. Я на WS6318 имею цену ниже чем на SIM900.
Go to the top of the page
 
+Quote Post
Tweeek
сообщение Jun 29 2013, 17:56
Сообщение #15


Участник
*

Группа: Участник
Сообщений: 74
Регистрация: 23-01-13
Из: СПб
Пользователь №: 75 303



Цитата(alfff @ Jun 29 2013, 12:01) *
Модули SW уже давно не славятся своим качеством

Действительно, что же в них такого плохого? Факты, факты пожалуйста.
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 5th July 2025 - 20:13
Рейтинг@Mail.ru


Страница сгенерированна за 0.01497 секунд с 7
ELECTRONIX ©2004-2016