- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经查看了所有 StackOverflow,但没有找到适合我的案例的解决方案我有 405 HttpStatusCode 调用 API/Regions/Create 操作这是我的 baseController 方法:
[HttpPost]
public virtual IHttpActionResult Create([FromBody]T entity)
{
thử
{
repository.Create(entity);
return Ok(entity);
}
catch (HttpException e)
{
return new ExceptionResult(e, this);
}
}
区域 Controller .cs
public class RegionsController : BaseController
{
public RegionsController()
{ }
public RegionsController(RegionRepository _repository)
{
RegionRepository repository = new RegionRepository();//_repository;
}
RegionRepository repository = new RegionRepository();
[HttpGet]
[Route("api/regions/{name}")]
public IHttpActionResult Get(string name)
{
thử
{
var region = repository.Get(name);
return Ok(region);
}
catch (HttpException e)
{
return new ExceptionResult(e, this);
}
}
}
WebApi 配置:
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
// Web API configuration and services
// Configure Web API to use only bearer token authentication.
// Web API configuration and services
var cors = new EnableCorsAttribute("*", "*", "*");
config.EnableCors(cors);
config.SuppressDefaultHostAuthentication();
config.Filters.Add(new HostAuthenticationFilter(OAuthDefaults.AuthenticationType));
// Web API routes
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
}
}
}
全局.asax:
public class WebApiApplication : System.Web.HttpApplication
{
private static NLog.Logger logger = NLog.LogManager.GetCurrentClassLogger();
protected void Application_Start()
{
logger.Info("Application Start");
AreaRegistration.RegisterAllAreas();
GlobalConfiguration.Configure(WebApiConfig.Register);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
//GlobalConfiguration.Configuration.MessageHandlers.Add(new CorsHandler());
}
//protected void Application_BeginRequest(object sender, EventArgs e)
//{
// HttpContext.Current.Response.AddHeader("Access-Control-Allow-Origin", "*");
// //if (HttpContext.Current.Request.HttpMethod == "OPTIONS")
// //{
// HttpContext.Current.Response.AddHeader("Access-Control-Allow-Methods", "POST, PUT, DELETE");
// HttpContext.Current.Response.AddHeader("Access-Control-Allow-Headers", "Content-Type, Accept");
// HttpContext.Current.Response.AddHeader("Access-Control-Max-Age", "1728000");
// HttpContext.Current.Response.End();
// // }
//}
private void Application_Error(object sender, EventArgs e)
{
var lastException = Server.GetLastError();
NLog.LogManager.GetCurrentClassLogger().Error(lastException);
}
}
}
和 Web.Config:
有什么错误的建议吗?
1 Câu trả lời
您应该在 POST 请求上调用 API/Regions,而不是 API/Regions/Create,除非您在操作的 Route
属性中指定 API/Regions/Create。 WebApi 将知道要搜索什么方法来处理请求。
关于c# - WebApi 2 Http 发布 405 "The requested resource does not support http method ' 发布'",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38397370/
Theo tôi hiểu, không có giới hạn về kích thước nội dung của yêu cầu HTTP POST. Do đó, máy khách có thể gửi hàng gigabyte dữ liệu trong một yêu cầu HTTP duy nhất. Bây giờ tôi đang tự hỏi máy chủ HTTP sẽ xử lý những yêu cầu như vậy như thế nào. Tomcat và Jett
Khi tìm hiểu về Web Deploy, tôi tình cờ thấy một số cuộc thảo luận về http://+:80 và http://*:80 cho lệnh netsh.exe. Những điều này có nghĩa là gì? Câu trả lời tốt nhất là từ URLPrefix Strings (Wi
Giả sử tôi có một bộ cân bằng tải, sau đó là 2 máy chủ web, rồi một bộ cân bằng tải nữa, sau đó là 4 máy chủ ứng dụng. Phản hồi HTTP có đi theo cùng đường dẫn với dịch vụ yêu cầu HTTP không? Câu trả lời hay nhất Theo đường dẫn, tôi cho rằng bạn là mạng
Tôi có một tài nguyên với uri /api/books/122, nếu tài nguyên đó không tồn tại khi máy khách gửi lệnh HTTP Delete cho tài nguyên này, thì mã phản hồi phù hợp cho Hành động này là gì? Có phải là 404 Không Sai không?
Có thông báo phản hồi HTTP cụ thể (hoặc đã thỏa thuận) nào (hoặc hành động nào khác ngoài việc ngắt kết nối) để làm rõ rằng máy chủ không chấp nhận các yêu cầu HTTP theo đường ống không? Tôi đang tìm cách để máy khách dừng xử lý các yêu cầu và gửi từng yêu cầu riêng biệt.
Khi tìm hiểu về Web Deploy, tôi tình cờ thấy một số cuộc thảo luận về http://+:80 và http://*:80 cho lệnh netsh.exe. Những điều này có nghĩa là gì? Câu trả lời tốt nhất là từ URLPrefix Strings (Wi
Tôi có một tài nguyên với uri /api/books/122, nếu tài nguyên đó không tồn tại khi máy khách gửi lệnh HTTP Delete cho tài nguyên này, thì mã phản hồi phù hợp cho Hành động này là gì? Có phải là 404 Không Sai không?
đóng cửa. Câu hỏi này cần tập trung hơn. Hiện tại, câu hỏi này không chấp nhận câu trả lời. Bạn có muốn cải thiện câu hỏi này không? Cập nhật câu hỏi để tập trung vào một vấn đề duy nhất bằng cách chỉnh sửa bài đăng này. Đã đóng 8 năm trước. Cải thiện điều này
Tôi đang sử dụng Mule làm REST API AMQP. Tôi phải gửi phương thức yêu cầu tùy chỉnh: "PRINT" nhưng tôi nhận được: Mã trạng thái: 400 Yêu cầu không hợp lệ Yêu cầu có thể
Tôi cần kiểm tra tập lệnh của mình với các URL có mã phản hồi HTTP khác nhau. Làm thế nào tôi có thể lấy được một ví dụ/mẫu URL hiện có phản hồi bằng mã 300, 303 hoặc 307, v.v.? Cảm ơn! Câu trả lời hay nhất Bạn có thể sử dụng httpbin cho mục đích này. ví dụ
Tôi đang cố gắng viết một chương trình để so sánh các yêu cầu HTTP và phản hồi tương ứng của chúng. Mọi thứ dường như đều hoạt động tốt trong hầu hết các trường hợp (khi quá trình truyền tải hoàn toàn bình thường và thậm chí cả khi không bình thường khi sử dụng số thứ tự TCP). Vấn đề duy nhất tôi gặp phải là khi tôi có các yêu cầu được chuyển tiếp. Sau đó,
Dịch vụ Web RESTful khuyến khích sử dụng HTTP 303 để chuyển hướng máy khách đến biểu diễn chuẩn của tài nguyên. Bài viết này chỉ thảo luận về chủ đề này trong bối cảnh của HTTP GET. Điều này có áp dụng cho các phương thức HTTP khác không? Nếu khách hàng cố gắng
Khi sử dụng mã hóa truyền HTTP theo khối, tại sao máy chủ cần phải ghi ra kích thước byte của khối cùng lúc và kết thúc dữ liệu khối tiếp theo bằng CRLF? Liệu điều này có khiến việc gửi dữ liệu nhị phân trở nên "CRLF-unclean" và phương pháp này trở nên hơi thừa không? giống
Câu hỏi này đã có câu trả lời ở đây: Có thể chấp nhận được khi máy chủ gửi phản hồi HTTP trước khi toàn bộ yêu cầu được xử lý không?
Nếu tôi thực hiện nhiều yêu cầu HTTP Get tới cùng một máy chủ và nhận được phản hồi HTTP 200 OK cho mỗi yêu cầu, tôi có thể sử dụng Wireshark như thế nào để xác định yêu cầu nào sẽ tương ứng với phản hồi nào? Hiện tại có vẻ như một yêu cầu http đã được gửi
func main() { http.HandleFunc("/", trình xử lý) } func handler(w http.ResponseWriter, r http.Request
Tôi không thể tìm thấy bất kỳ hướng dẫn nào hữu ích về NodeJS với Typescript, vì vậy tôi đã tự tìm hiểu và quả thực là tôi đã gặp phải vấn đề. Tôi không hiểu sự khác biệt giữa hai dòng này: import * as http from
Đặt câu hỏi về Tiêu đề HTTP có phân biệt chữ hoa chữ thường không? Nếu phương thức HTTP phân biệt chữ hoa chữ thường, hầu hết các máy chủ xử lý "get" hoặc "post" so với "GET" hoặc "POST" như thế nào? Ví dụ, nó trông giống như
Tôi đang sử dụng ASP.NET, nơi tôi nhận các truy vấn thông qua động từ GET, ứng dụng được dành riêng cho URL đó. Mã này hoạt động, nhưng nếu người dùng gửi mật khẩu làm mất hiệu lực HTTP 200 trả lời tôi với nội dung "Người dùng không thành công hoặc
Đã đóng. Câu hỏi này cần có thông tin chi tiết hoặc rõ ràng. Đã đóng. Câu hỏi này cần tập trung hơn. Hiện tại không chấp nhận câu trả lời. Bạn muốn cải thiện vấn đề này? Thêm chi tiết và làm rõ vấn đề bằng cách chỉnh sửa bài đăng này. 9
Tôi là một lập trình viên xuất sắc, rất giỏi!