Tôi có một dự án API Web trả về một số dữ liệu sản phẩm. Nó thương lượng kiểu trả về một cách chính xác tùy thuộc vào tiêu đề Chấp nhận (JSON/XML) của yêu cầu. Vấn đề là, nếu không có tiêu đề Accept nào được chỉ định, nó trả về JSON, nhưng tôi muốn nó trả về XML theo mặc định. Làm cách nào để thay đổi các thỏa thuận nội dung mặc định trong Global.asax?Làm thế nào để thay đổi mặc định ASP.NET MVC Web API phương tiện truyền thông định dạng?
16
A
Trả lời
29
Tìm thấy một giải pháp thông qua http://www.strathweb.com/2013/06/supporting-only-json-in-asp-net-web-api-the-right-way/
gia tăng này trong WebApiConfig.Register()
:
config.Formatters.Clear();
config.Formatters.Add(new XmlMediaTypeFormatter());
config.Formatters.Add(new JsonMediaTypeFormatter());
config.Formatters.Add(new FormUrlEncodedMediaTypeFormatter());
Vì vậy, mặc định là XML, các định dạng đầu tiên, nhưng API vẫn hỗ trợ JSON nếu yêu cầu yêu cầu nó.
Các vấn đề liên quan
- 1. Làm thế nào để sử dụng Newtonsoft.Json làm mặc định trong Asp.net Core Web Api?
- 2. Làm thế nào để thay thế thông báo lỗi ModelState mặc định trong Asp.net MVC 2?
- 3. Asp.net Web API - Cách đặt tên tệp cho Định dạng Kiểu phương tiện CSV tùy chỉnh
- 4. Làm thế nào để thay đổi lược đồ vị trí xem mặc định trong ASP.NET MVC?
- 5. Cách thay đổi tuyến đường mặc định trong trang web asp.net api
- 6. Làm thế nào để bạn tắt hoặc thay thế thông báo lỗi ModelState mặc định trong Asp.net MVC?
- 7. Thay đổi định dạng ngày trong ứng dụng ASP.NET MVC
- 8. Làm thế nào để thay đổi định dạng mẫu Django ngày mặc định?
- 9. GlassFish 3: làm thế nào để bạn thay đổi định dạng ghi (mặc định)?
- 10. Làm thế nào để thay đổi định dạng mặc định trong StringToDate? Spring WebFlow
- 11. Trang asp.net mvc mặc định
- 12. Định dạng ngày giờ ISO UTC làm định dạng đầu ra json mặc định trong phản hồi API MVC 6
- 13. Làm cách nào để thay đổi định dạng thông báo tường trình mặc định trong công cụ ứng dụng python?
- 14. Thay đổi định dạng in nổi mặc định
- 15. Làm cách nào để thay đổi tên bảng ASP.NET Identity mặc định trong .NET CORE?
- 16. Định tuyến trong Asp.net Mvc 4 và Web Api
- 17. Làm thế nào để thay đổi scrollspeed mặc định, scrollamount, scrollinertia của một trang web
- 18. Tùy chỉnh định tuyến ASP.NET Web Api
- 19. Làm thế nào để thay đổi các điều kiện truy vấn phương tiện truyền thông khởi động?
- 20. Làm thế nào để bảo vệ chống lại CSRF theo mặc định trong ASP.NET MVC 4?
- 21. Làm cách nào để sửa đổi các tuyến API Web mặc định của khung công tác?
- 22. Thay đổi kiểu mặc định của tiện ích DOJO
- 23. Asp.net MVC/Định tuyến Api Web: Cần định tuyến một chút khác nhau
- 24. Mô hình ràng buộc ASP.Net MVC - cách thay đổi định dạng ngày?
- 25. Làm cách nào để chuyển đổi khóa riêng PEM được định dạng PKCS # 8 thành định dạng truyền thống?
- 26. Làm thế nào để thiết lập một CheckBox theo mặc định Đăng ký tại ASp.Net MVC
- 27. Thay đổi Trình duyệt mặc định của Visual Studio trong dự án ASP.NET MVC
- 28. NSUserThay đổi thông báo thay đổi mặc định trong watchppExtension
- 29. Lưu thay đổi email trong Nhà cung cấp thành viên mặc định trong ASP.NET MVC
- 30. ASP.NET lõi, thay đổi mặc định chuyển hướng cho phép
Cũng thêm 'FormUrlEncodedMediaTypeFormatter' vào mã trên của bạn như theo mặc định Web API có định dạng đó quá trong bộ sưu tập –
điều này ** FormUrlEncodedMediaTypeFormatter ** nào ?? Tôi thấy điều đó không trả lại gì cả! –
@Chỉ cần trả về các giá trị được định dạng URL (http://msdn.microsoft.com/en-us/library/system.net.http.formatting.formurlencodedmediatypeformatter(v=vs.118).aspx) như 'myVariable = 1 & myOtherVariable = test' – Edgar