Hi!
Ich habe eine kleine Doku bekommen um sein REST-Service an zu sprechen.
Ganz kurz: Es geht darum News zu laden und auch Neue erstellen zu können.
Laden funktioniert wunderbar nur wenn ich ein neues Item erstellen will bekomme ich immer "The remote server returned an error: NotFound."
Die Doku:
ERZEUGEN (POST):
curl -i -X POST -H "Content-Type:application/html" -H "Accept:application/json" -d [{"serNo":7,"subtitle":"7","text":"77","title":"7","version":1}] http://localhost:8080/DemoApp/newsitems/jsonArray
Wichtig:
* Angabe des Content Type!
* Angabe der [] Klammern, das ist nämlich eine Collection!
* Weglassen der ID im Json String - Mit Id kommt zwar kein Fehler, es wird die Transaktion aber geRollbacked!
Mein Code:
public void SaveNewsItem()
{
//der Helper funktioniert, zu mindest liefert er mir den gewünschten String wie in der Doku verlangt
string serializedObject = NewsItemJsonSerializeHelper.SerializeNewsItem(_newsItem.GetNewsItem());
WebClient client = new WebClient();
client.Headers[HttpRequestHeader.Accept] = "application/json";
client.Headers[HttpRequestHeader.ContentType] = "application/html";
client.UploadStringCompleted += new UploadStringCompletedEventHandler(AsyncServiceCompleted);
client.UploadStringAsync(new Uri(AddServiceUrl, UriKind.Absolute), "POST", serializedObject);
}
private void AsyncServiceCompleted(object sender, UploadStringCompletedEventArgs args)
{
if (args.Error == null && args.Result != null)
{
//TODO: ...
}
}
Habt ihr eine Idee woran das liegen kann?
Ich bin am Ende mit meinem Latein -.-
Danke & LG
Und selbst beantwortet...
Der Code ist einwandfrei (nach bestem Wissen und Gewissen 😛)... die URL hat nicht gestimmt -.-