programing

Wordpress rest api에서 초안 가져오기 금지

mytipbox 2023. 3. 19. 17:46
반응형

Wordpress rest api에서 초안 가져오기 금지

노드 앱에서 WP rest api와 인터페이스하기 위해 wpapi npm 모듈을 사용하고 있습니다.인증이 완료되어 사용자가 초안 투고를 작성했습니다.동일한 자격 증명을 사용하여 대시보드에 가면 초안 게시물도 보거나 편집할 수 있습니다.

초안 목록을 작성하기 위해 다음 방법을 사용합니다.

wp.posts().auth().param( 'context', 'edit' ).param( 'status', 'draft' )

하지만 계속해서 다음 오류가 발생합니다.

{ code: 'rest_invalid_param',
  message: 'Invalid parameter(s): status',
  data: { status: 400, params: { status: 'Status is forbidden.' } } }

이 문제에 대한 코멘트와 몇 가지 유용한 컨텍스트가 여기에 있습니다.

http://localhost:8000/wp-json/wp/v2/wp?status=http:/localhost:8000/wp-json/wp/v2/http?status=http에 대한 curl 응답은 동일한 오류 메시지이므로 노드 모듈에 문제가 있다고 생각하지 않습니다.

저는 wpapi 모듈의 저자이며, 이 문제는 당사의 문제 목록 https://github.com/WP-API/node-wpapi/issues/325에 기재되어 있으며, 최신 릴리스에서 수정된 버그를 나타냅니다.

초안을 조회할 때 인증이 필요하며 인증을 제공하지 않으면 이 400개의 오류가 발생할 수 있습니다.단, 위의 링크된 문제에서 설명한 바와 같이 인증은 일회성 요구에 대해 동작하고 있었습니다.왜 400달러야?wpapi 요구 내에서는 콜렉션 페이징 시 인증 credential을 적절히 전송하지 않았기 때문에 결과 첫 페이지에 대한 요구는 200을 반환하고 두 번째 요구는 400을 반환했습니다.이 버그는 컬렉션을 페이징할 때 항상 인증 자격 정보를 전달함으로써 해결되었으며, 이로 인해 다른 사용자가 문제를 일으키지 않기를 바랍니다.

400이 발생했을 경우의 일반적인 트러블 슈팅:

  • 인증이 확실한가요?(/users/me를 눌러보세요)
  • 초안 투고를 표시하기 위해 필요한 기능을 사용자가 가지고 있습니까?

이러한 버그가 발견되면 문제 발생을 환영합니다!

언급URL : https://stackoverflow.com/questions/44840350/fetching-drafts-forbidden-in-wordpress-rest-api

반응형