I am trying to use C# to get listitems from sharepoint online (i cannot use sharepoint.client.dll because the tools doesn't support it), hence i looking for other way like http get/ post by sharepoint rest api. the following code return 403 but it should be success. Any idea?
try
{
var username = "[email protected]";
var password = "P@ssword";
var domain = "company.sharepoint.com";
var handler = new HttpClientHandler();
handler.Credentials = new System.Net.NetworkCredential(username, password, domain);
var client = new HttpClient(handler);
client.BaseAddress = new Uri($"https://company.sharepoint.com/sites/xxx/");
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Add("Accept", "application/json;odata=verbose");//we want to receive JSON rather than XML
var response = await client.GetAsync("_api/lists/getbytitle('listName')/items");
var responseText = await response.Content.ReadAsStringAsync();
response.EnsureSuccessStatusCode();
if(response.IsSuccessStatusCode)
{
var content = await response.Content.ReadAsStringAsync();
lbl_result.Text += content;
}else{
var content = await response.Content.ReadAsStringAsync();
lbl_result.Text += content;
}
}catch ( Exception ex)
{
lbl_result.Text = ex.Message;
}