Điểm:1

Làm cách nào để gửi biểu mẫu liên hệ qua JSON:API?

lá cờ cn

Các yêu cầu để gửi biểu mẫu liên hệ bằng JSON:API là gì?

Tôi đã bật mô-đun Danh bạ cốt lõi và thiết lập biểu mẫu liên hệ tùy chỉnh trên toàn trang web. Tôi đã cho phép người dùng anon + auth gửi biểu mẫu.

Tiếp theo, tôi đã bật JSON:API. Tôi có thể xem biểu mẫu liên hệ tại /jsonapi/contact_form/contact_form:

"dữ liệu":[
   {
      "type":"contact_form--contact_form",
      "id":"d97e73f1-7d06-4bf0-b05b-1c654a659dfc",
      "liên kết":{
         "bản thân":{
            "href":"https://example.lndo.site/jsonapi/contact_form/contact_form/d97e73f1-7d06-4bf0-b05b-1c654a659dfc"
         }
      },
      "langcode":"ja",
      "trạng thái": đúng,
      "phụ thuộc":[
         
      ],
      "drupal_internal__id":"example_support",
      "label":"Hỗ trợ ví dụ",
      "người nhận":[
         "[email protected]"
      ],
      "Đáp lại":"",
      "trọng lượng":0,
      "message":"Cảm ơn bạn đã gửi.",
      "chuyển hướng":""
   }
],

Tuy nhiên, điểm cuối tôi cần ĐĂNG để gửi biểu mẫu này là gì?

tôi đã tìm thấy vấn đề này về việc email không được gửi khi biểu mẫu liên hệ được gửi qua REST.

Vấn đề đó cho thấy rằng /entity/contact_message Điểm cuối REST phải được bật để gửi biểu mẫu liên hệ-- điều này có đúng với JSON:API không?

Tôi bối rối vì sử dụng JSON:API, tôi có thể gửi các nút mà không cần kích hoạt bất kỳ điểm cuối REST nào bằng cách gửi tới /jsonapi/nút/content_type.

Alireza Tabatabaeian avatar
lá cờ cn
api json không phụ thuộc vào điểm cuối còn lại, vì hầu hết mọi tình huống thực hiện yêu cầu đăng tới `Entity_type/Gói` sẽ tạo ra thực thể mới của gói đó, vì vậy nếu điều đó không hoạt động thì có thể nó liên quan đến mô-đun api json nhưng tôi nghĩ rằng việc kích hoạt một điểm cuối còn lại sẽ không giúp ích gì trong tình huống này
Điểm:1
lá cờ cn

Có vẻ như điểm cuối REST là bắt buộc trong trường hợp này vì mặc dù biểu mẫu liên hệ là thực thể, nhưng việc gửi biểu mẫu liên hệ không phải là thực thể trừ khi bạn sử dụng Lưu trữ liên hệ mô-đun.

Tuy nhiên, đưa ra các vấn đề cốt lõi với thông báo không được gửisố lượng lớn các sự cố RTBC và "Cần xem xét" trong hàng đợi sự cố Bộ nhớ liên hệ kể từ ngày 30 tháng 1 năm 2022, tôi quyết định thực hiện một cách tiếp cận khác. Nếu người dùng cảm thấy khó chịu và liên hệ để được hỗ trợ, thì điều đặc biệt tồi tệ là có một số lỗi khiến nội dung gửi của họ bị thất lạc hoặc phản hồi chậm trễ.

Vì vậy, tôi đã giải quyết vấn đề này bằng cách sử dụng Biểu mẫu web còn lại mô-đun:

  1. Cài đặt mô-đun.
  2. Kích hoạt gửi biểu mẫu web Tài nguyên REST sử dụng mô-đun REST UI.
  3. Tạo biểu mẫu web.
  4. Thêm mã vào ứng dụng giao diện người dùng để gửi biểu mẫu.

Tôi đã làm việc này trong khoảng một giờ và thay đổi bổ sung duy nhất tôi phải thực hiện cho đến nay là vá Webform REST để tôi có thể gỡ cài đặt REST UI sau khi bật điểm cuối.

Đă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.