I Twilio der REST-API und Alamofire zu setzen bestimmte Attribute zu einem Kanal zu verwenden versucht ist, wenn es (https://www.twilio.com/docs/api/ip-messaging/rest/channels#action-create)(Swift) Twilio Post-Anforderung Attribute setzen mit alamofire
let parameters : [String : AnyObject] = [
"FriendlyName": "foo",
"UniqueName": "bar",
"Attributes": [
"foo": "bar",
"bar": "foo"
],
"Type": "private"
]
Alamofire.request(.POST, "https://ip-messaging.twilio.com/v1/Services/\(instanceSID)/Channels", parameters: parameters)
.authenticate(user: user, password: password)
.responseJSON { response in
let response = String(response.result.value)
print(response)
}
Mit diesem Code erstellen, die Antwort Ich erhielt zurück war, dass ein Kanal mit FriendlyName foo und UniqueName bar erstellt wurde, aber dieser Kanal hatte keine Attribute festgelegt.
Blick auf die Alamofire Github (https://github.com/Alamofire/Alamofire) Ich sehe, dass es eine Möglichkeit gibt, eine POST-Anfrage mit JSON-codierten Parametern zu senden. Also habe ich versucht, dies:
let parameters : [String : AnyObject] = [
"FriendlyName": "foo",
"UniqueName": "bar15",
"Attributes": [
"foo": "bar",
"bar": "foo"
],
"Type": "private"
]
Alamofire.request(.POST, "https://ip-messaging.twilio.com/v1/Services/\(instanceSID)/Channels", parameters: parameters, encoding: .JSON)
.authenticate(user: user, password: password)
.responseJSON { response in
let response = String(response.result.value)
print(response)
}
Beim Hinzufügen „encoding: JSON“ auf die Anfrage die Antwort zeigt, dass nicht nur wurden die Attribute nicht gesetzt, sondern auch die Friendly und Unique waren gleich Null, im Gegensatz zu früher, als sie richtig eingestellt wurden Verwenden der URL-codierten Parameter.
Setzte ich die Attribute falsch in 'Parameter'? Twilios Dokumentation sagt, dass Attribute "ein optionales Metadatenfeld ist, das Sie verwenden können, um beliebige Daten zu speichern. In diesem Feld wird keine Verarbeitung oder Validierung durchgeführt."
Hilfe würde geschätzt :)