Ich bin neu bei azure iot. und ich versuche, shared access policies in azure iot hub mit seiner rest api zu erstellen.Gemeinsame Zugriffsrichtlinienerstellung in Azure IoT Hub unter Verwendung der Rest-API
https://management.azure.com/subscriptions/{subscription-Id}/resourceGroups/{group-name}/providers/Microsoft.Devices/IotHubs/{hub-name}?api-version=2016-02-03");
und mein Java-Code ist
String policyold = "{\"tags\" : {}, \"location\": \"East Asia\",\"properties\" : \"authorizationPolicies\" : [{\"name\" : \"policy-namw\", \"primaryKey\" : \"{mykey}\" ,\"secondaryKey\" : \"secondary-key\" ,\"permissions\" :[\"ServiceConnect\" ,\"RegistryRead\" ,\"RegistryWrite\" ,\"DeviceConnect\"]}],\"eventHubEndpoints\" : { \"events\" : {\"messageRetentionInDays\":\"2\"}}}";
StringEntity input1 = new StringEntity(policyold);
input1.setContentType("application/json");
input1.setContentEncoding("UTF8");
put.setEntity(input1);
put.setHeader("Authorization", token);
HttpResponse r2 = httpclient2.execute(put);
System.out.println(r2.getStatusLine());
String content2 = EntityUtils.toString(r2.getEntity());
org.json.JSONObject recvObj2 = new org.json.JSONObject(content2);
, aber ich bin mit dem followiing Fehler auftritt.
HTTP/1.1 400 Bad Request {"error":{"code":"InvalidRequestContent","message":"The request content was invalid and could not be deserialized: 'Error converting value \"authorizationPolicies\" to type 'System.Collections.Generic.Dictionary`2[System.String,Newtonsoft.Json.Linq.JToken]'. Path 'properties', line 1, position 76.'."}}
Außerdem verwende ich dieses Tutorial. https://msdn.microsoft.com/en-us/library/mt589015.aspx
Kann mir jemand helfen, dies zu lösen?
Ich schlage vor, Sie können in das Azure IoT-Hub-Java-SDK für vereinfachte API-Aufrufe schauen. Der Link ist unter https://github.com/Azure/azure-iot-sdks/tree/master/java – juvchan
Ja, ich habe versucht, dies zum Erstellen von Richtlinien für den gemeinsamen Zugriff zu verwenden. Zu diesem Zweck konnte jedoch kein Codebeispiel und keine Dokumentation gefunden werden. Das ist der Grund, warum ich mit http Rest api enden. Kannst du einen verweisen? danke – Sadaf