2015-10-20 2 views
0

Я хотел бы подключиться к веб-сервису AzureML. Я посмотрел в метод POST на Arduino Главная, а также здесь https://iotguys.wordpress.com/2014/12/25/communicating-with-microsoft-azure-eventhub-using-arduino/Arduino Uno - WebService (AzureML)

Вот мой метод установки:

void setup() 
    { 
     Serial.begin(9600); 
     while (!Serial) { 
     ; // wait for serial port to connect. 
     } 

    Serial.println("ethernet"); 

    if (Ethernet.begin(mac) == 0) { 
     Serial.println("ethernet failed"); 
     for (;;) ; 
    } 
    // give the Ethernet shield a second to initialize: 
    delay(1000); 
} 

Столб Метод основан на следующем: http://playground.arduino.cc/Code/WebClient

Я просто добавил sprintf(outBuf, "Authorization: Bearer %s\r\n", api_key); к заголовок, с char* api_key = "the ML Web Service API KEY"

Кроме того, в отличие от указанного в WebClient, я использую весь URI WebService в качестве URL-адреса и не указываю имя страницы.

Это не работает.

Сеть, к которой я подключаю, имеет доступ в Интернет.

Что я делаю неправильно?

ответ

0

Услуги, которые вы создаете, должны получать запросы от устройства с возможностями SSL для выполнения HTTPS-запросов. AFAIK, Arduino не поддерживает возможности SSL.

Один обычный сценарий - прикрепить Arduino к третьему устройству, например, Raspberry Pi 2 и т. Д., Чтобы использовать его в качестве шлюза и выполнять вызов от самого Pi.

Вот пример project от команды Microsoft Open Technologies, в которой используются Arduino Uno, малиновый pi и материал Azure.

Надеюсь, это поможет!