Arduino Uno - 网络服务 (AzureML)

Arduino Uno - WebService (AzureML)

我想连接到 AzureML Web 服务。我已经在 Arduino 主页和此处 https://iotguys.wordpress.com/2014/12/25/communicating-with-microsoft-azure-eventhub-using-arduino/

上查看了 POST 方法

这是我的设置方法:

    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);
 }

Post方法基于此:http://playground.arduino.cc/Code/WebClient

我刚刚将 sprintf(outBuf, "Authorization: Bearer %s\r\n", api_key); 添加到 header,char* api_key = "the ML Web Service API KEY"

此外,与 WebClient 中指定的不同,我使用整个 WebService URI 作为 url 并且不指定页面名称。

这行不通。

我连接的网络可以访问 Internet。

我做错了什么?

您创建的 Machine Learning Studio 服务需要从具有 SSL 功能的设备接收请求以执行 HTTPS 请求。 AFAIK,Arduino 不支持 SSL 功能。

一种常见的情况是将 Arduino 连接到第三个设备,如 Raspberry Pi 2 等,将其用作网关并从 Pi 本身进行调用。

这是来自 Microsoft Open Technologies 团队的示例 project,它使用 Arduino Uno、Raspberry pi 和 Azure 的东西。

希望对您有所帮助!