Я получаю ошибку 401, которую я не ожидаю. Я на 100% уверен, что пароль и usernamne верны. Когда я пробую это на почтальоне, он работает, и я получаю данные, которые я ожидаю. Но в этом коде метод .downloadstring()
возвращает ошибку 401. Я создал новую учетную запись урожая и попытался добраться до нее с тем же кодом, просто изменив пароль и имя пользователя, и я получил данные API, которые я хотел. Есть ли другая причина, то неправильный пароль или имя пользователя ошибка 401 может быть кэширована?Очень странная ошибка 401?
public List<Project> GetAllProjects()
{
uri = "https://bruh.harvestapp.com/projects";
jsonPath = Path.Combine(HostingEnvironment.MapPath("~/App_Data"), "projects.json");
using (WebClient webClient = new WebClient())
{
webClient.Headers[HttpRequestHeader.ContentType] = "application/json";
webClient.Headers[HttpRequestHeader.Accept] = "application/json";
webClient.Headers[HttpRequestHeader.Authorization] = "Basic " + Convert.ToBase64String(new ASCIIEncoding().GetBytes(usernamePassword));
string response = webClient.DownloadString(uri);
projectsList = JsonConvert.DeserializeObject<List<Wrapper>>(response).Select(p => p.project).ToList();
}
return projectsList;
}
Иам используя урожай апи –
Вы говорите, что «на Postman, работает». Позвольте мне усомниться в этом. Используете ли вы Fiddler для проверки того, что запросы на 100% одинаковы? Я думаю, что настоящая проблема заключается в заголовках запросов. –
У вас возникли проблемы с авторизацией. Вы проверили, в каком формате ** HARVEST-API ** принимает заголовок. Или вы отправляете правильный токен (например, имя пользователя: пароль) –