Điểm:0

Kiểm tra Spring Boot API cho kết quả HTTP 405 (Phương thức không được phép) trên PUT

lá cờ in

Tôi đã tạo một API mà tôi đã triển khai cho Máy chủ Tomcat. Trong quá trình phát triển, tôi sẽ khởi động ứng dụng từ Eclipse và kiểm tra điểm cuối bằng Postman. Từ Eclipse, ứng dụng chạy tốt. Tôi sẽ thấy bot của mình (được tạo bằng Selenium WebDriver) bắt đầu, truy cập vào các trang được nhắm mục tiêu, nhấp vào các phần tử theo kịch bản và kết thúc quá trình.

Tôi đã sửa đổi POM để tạo tệp WAR mà tôi đã triển khai thủ công bằng cách sử dụng trang Ứng dụng Trình quản lý Tomcat. WAR đã được triển khai và nó đang chạy tốt theo như tôi có thể nói. Tôi quyết định chạy thử nghiệm tương tự bằng Postman; rõ ràng là thay đổi "localhost" thành địa chỉ IP và cổng thực tế. Thật không may, tôi gặp lỗi HTTP 405 này và tôi không biết tại sao. Tôi cho rằng cần phải cấu hình một cái gì đó trong Tomcat nhưng tôi không biết cụ thể mình cần làm gì.

Tôi đã định cấu hình Tomcat theo điều này và vẫn không gặp may: http://www.codereye.com/2010/12/configure-tomcat-to-accept-http-put.html

lá cờ us
Cần thêm chi tiết về lỗi 405 - có vẻ như cuộc gọi có thể bị lỗi. Tin nhắn cuộc gọi và phản hồi cũng sẽ giúp gỡ lỗi.
hfontanez avatar
lá cờ in
Tôi không có thêm chi tiết để cung cấp.
Điểm:0
lá cờ in

Tomcat theo mặc định không được kích hoạt cho lệnh HTTP PUT.

Tôi đã phải định cấu hình Tomcat bằng cách sửa đổi các tệp web.xml và tomcat-users.xml.

Các thay đổi đối với tệp web.xml

  1. Cần thiết để thêm chỉ đọc = sai tham số
<init-param>
    <param-name>readonly</param-name>
    <param-value>false</param-value>
</init-param>
  1. Cần thêm một ràng buộc bảo mật cho vai trò
<security-constraint>
    <web-resource-collection>
        <web-resource-name>Demo App</web-resource-name>
        <url-pattern>/*</url-pattern>
        <http-method>PUT</http-method>
    </web-resource-collection>
    <auth-constraint>
        <role-name>#####</role-name>
    </auth-constraint>
</security-constraint>

Các thay đổi đối với tệp tomcat-users.xml

  1. Cần thêm người dùng và vai trò để phù hợp với ràng buộc bảo mật đã thêm
<user name="#####" password="#####" roles="#####" />

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.