Hi,
I need to post data in sharepoint with REST requests and C#. To do that I have to set the X-RequestDigest Value. But I don't know how ? The HttpWebRequest class doesn't seem to have a property for that. I tried to do this :
HttpWebRequest request.Headers.Add("X-RequestDigest", digestValue);
Here "digestValue" is a string which contains the form digest value. It does'nt work, I get a webException : 500 Internal server error.
This is my request code :
public HttpWebResponse RequestPost(string oDataUrl, string data) { byte[] byteArray = Encoding.ASCII.GetBytes(data); HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(sharepointUrl.ToString() + oDataUrl); request.Method = "POST"; request.Accept = "application/atom+xml"; request.ContentLength = byteArray.Length; request.ContentType = "application/atom+xml;type=entry"; request.Headers.Add("Authorization", "Bearer " + accessToken); if (digestValue != null) { request.Headers.Add("X-RequestDigest", digestValue); } if (request.ContentLength > 0) { Stream stream = request.GetRequestStream(); stream.Write(byteArray, 0, byteArray.Length); stream.Close(); } return (HttpWebResponse)request.GetResponse(); }
Thanks.