1

PUT リクエストを完了した後、Philips Hue から json レスポンスを取得しようとしています。Philips hue には Web サーバー コマンド ラインが組み込まれています。hue Web インターフェイスを使用して「{"on":True}」のような基本的な json メッセージを送信すると、リクエストが成功したことを示す json 応答が返されます。メッセージは次のようになります。

"[
    {
        "success": {
            "/lights/1/state/on": true
        }
    }
]"

現在、以下のセットアップを介してコマンドをhueに送信すると、エラーを引き起こすはずのjsonを送信しても、常にTRUE .IsSuccessStatusCodeを取得します(メッセージがhueによって受信されたためだと思いますか?)。例; json {"on":Cause an error} を使用しても、TRUE を取得できます。

そのため、PUT を送信した後、上記の json 応答を色相から取得する方法を見つけようとしています。以下は私が使用しているコードです。

using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;


    async static void setLight()
    {
        HttpClient client = new HttpClient();

        HttpRequestMessage request = new HttpRequestMessage();

        String myJson = "{\"on\":false}";

        var content = new StringContent(myJson, Encoding.UTF8, "application/json");

        HttpResponseMessage returnStatement = await client.PutAsync("http://192.168.1.3/api/139f12ce32a30c473368dbe25f6586b/lights/1/state", content);

        Console.WriteLine(returnStatement.IsSuccessStatusCode);

    }
4

1 に答える 1

2
 Console.WriteLine("Return Statment:" + await returnStatement.Content.ReadAsStringAsync());

これは、私が探していたjson色相応答を返します。await キーワードを前に置くまで、基本的な http 情報を取得し続けました。Q42.hueApi に声をかけてください。私はあなたのコードを最大限に活用しましたが、それは大いに役立ちました。

于 2016-02-23T02:20:52.080 に答える