Использование. NET Framework 4.6.1. Код в программе выглядит следующим образом:
// this runs fine, returns the correct JSON
public string rawRequest(HTTPmethods HTTPmethod, string path)
{
try
{
// create the full URI
string rawRequestURI = URLConstants.API_ROOT + path;
// create the request
var webRequest = WebRequest.Create(rawRequestURI);
webRequest.Method = HTTPmethod.ToString();
webRequest.ContentType = "application/json";
webRequest.Headers["Authorization"] = "authorisation key goes here";
// make the request asynchronously and get the response
WebResponse webResponse = webRequest.GetResponseAsync().Result;
int statusCode = (int)((HttpWebResponse)webResponse).StatusCode;
Stream receiveStream = webResponse.GetResponseStream();
StreamReader reader = new StreamReader(receiveStream);
return reader.ReadToEnd();
}
catch (WebException webEx)
{
throw;
}
}
После создания модульного теста (см. Ниже) для проверки вышеуказанного метода он завершается неудачно, выдавая WebException
из-за ошибки 403 с сервера. Что может быть причиной этого?
[TestMethod]
public void rawRequest_Test_correctCall()
{
// arrange
ISBNDBService service = new ISBNDBService();
string path = "/book/9781934759486";
// act
string result = service.rawRequest(HTTPmethods.GET, path);
// assert
}