我参考了很多 SO 帖子viz. The remote server returned an error: (405) Method Not Allowed. WCF REST Service 等等,但它们似乎都没有我遇到的相同问题。
上下文: 我需要将用户名和密码传递给 Rest Api,然后返回一个身份验证令牌。
以下是我执行此操作的代码。我在最后一行抛出一个 Http 状态代码 405 Method Not Allowed 异常:
var uri = "https:/localhost:5001/api/v5/GetToken";
WebRequest req = WebRequest.Create(uri);
req.Method = "GET";
req.Headers["Authorization"] = "Basic " + Convert.ToBase64String(Encoding.Default.GetBytes("user@gmail.com:userPassword1234"));
HttpWebResponse resp = req.GetResponse() as HttpWebResponse;
然后我想我可能使用了错误的方法,我将它从 GET 更改为 POST 并导致 400 Bad Request 错误。 400 Bad Request 错误是有道理的,因为我没有尝试添加数据或创建资源。我只是在进行检索,因此 GET 应该足以满足此调用。
我做错了什么?