Amethi
(Jay Van der Zant)
2월 14, 2020, 3:38오후
1
API를 통해 편집 콘텐츠를 Discourse로 마이그레이션하고 있으며, 마이그레이션을 테스트하기 위해 새로운 개발용 Discourse 인스턴스를 구축했습니다. 댓글이 있는 3개의 주제를 생성할 수 있지만, 4번째 주제를 생성하려고 하면 요청이 멈춥니다.
이것이 스팸/레이트 리미팅 설정 때문이라고 생각하여, 주제 생성에 개입할 수 있는 것으로 보이는 모든 설정을 비활성화해 보았지만 문제가 여전히 지속됩니다.
이런 시나리오에 대한 가이드라인이 있을까요?
아직 브랜드 뉴인 Discourse 인스턴스를 사용하고 있어 멤버가 없으므로, 마이그레이션 프로그램은 주제/댓글 작성자에 따라 필요한 사용자 계정을 생성합니다. 프로덕션 환경에서는 계정이 이미 존재할 것입니다.
설정:
Amethi
(Jay Van der Zant)
2월 14, 2020, 3:44오후
2
아, 이제 새 주제를 이식할 수 없네요.
스팸 방지 기능을 완전히 끄는 방법이 있을까요?
justin
(Justin DiRose)
2월 14, 2020, 4:34오후
3
API 대신 가져오기 스크립트 중 하나를 사용하지 않으려는 이유가 있나요?
Amethi
(Jay Van der Zant)
2월 14, 2020, 4:57오후
4
솔직히 스크립트가 존재하는지 몰랐습니다.
제 콘텐츠는 커스텀 데이터베이스에 저장되어 있습니다. 다행히 개발자라서 C# 프로그램을 작성해서 DB를 쿼리하고 API를 통해 토픽/답글을 만드는 것은 어렵지 않았습니다. 그런데 Discourse의 일부 차단 기능이 발동하면서 일이 꼬이기 시작했네요 :-/
simon
2월 14, 2020, 5:36오후
5
요청이 멈출 때 Discourse에서 오류 메시지가 반환되나요?
수신하는 오류 메시지에 따라, API 요청에 skip_validation 매개변수를 추가하여 문제를 해결할 수 있습니다. 이 값은 true로 설정해야 합니다. 이 매개변수가 설정되면, Discourse가 게시물이 사이트 설정에서 정의된 기준을 충족하는지 확인하는 많은 검사들이 우회됩니다.
Amethi
(Jay Van der Zant)
2월 14, 2020, 6:00오후
6
제 눈에 보기엔 요청이 그냥 멈춰 있는 것 같은데, API와 상호작용하는 데 사용하는 패키지에 일부 로깅 기능이 있습니다. 먼저 이 기능을 사용해 오류 메시지를 찾아보겠습니다.
해당 패키지는 검증을 건너뛰는 옵션이 없습니다. 매개변수를 추가하기 위해 패키지를 수정해야 할 수도 있겠네요.
팁 주셔서 감사합니다.
C# Wrapper to the Discourse Api
Amethi
(Jay Van der Zant)
2월 14, 2020, 10:49오후
7
POST 요청에
skip_validations=true
파라미터를 추가하니 작동했습니다. @simon님 감사합니다!