코드 블록이 포함된 주제를 게시할 수 없습니다

안녕하세요,

저희 discourse 인스턴스에 다음 내용을 게시할 수 없습니다. 원인이 무엇일지 도움을 주실 수 있을까요?

추가 정보: 관리자 계정으로 시도해 보았거나, 일반 사용자 계정으로 시도해 보았습니다.
하위 카테고리에 게시물을 작성하려고 합니다.
코드 없이 게시물을 작성하면 정상 작동하며, 이후 게시물을 편집하여 코드를 추가할 수 있습니다.
그러나 처음부터 코드를 포함하여 게시물을 작성하면 “Oops! This page doesn’t exist or is private” 오류가 발생합니다.


안녕하세요
OpenSearchAPI를 사용하면 여러 제품이 포함된 응답을 받습니다.
제품의 services 섹션은 다음과 같은 형태입니다:

 "services": {
   "download": {
     "url": "https://catalogue.dataspace.copernicus.eu/download/6181e91f-df75-518d-89bf-b57c3ad1b4ea",
     "mimeType": "application/octet-stream",
     "size": 61062129
   }
 },

불행히도 해당 URL이 작동하지 않습니다. 제품을 다운로드하려고 하면 301 HTTP(영구 이동) 오류가 발생합니다. 응답에는 새 위치의 URL이 제공되지 않습니다.
제품을 다운로드하기 위해 현재는 OData URL을 사용하고 있습니다:
https://download.dataspace.copernicus.eu/odata/v1/Products({ID})/$value

하지만 실제로는 제공된 URL이 정상적으로 작동해야 하지 않을까요?

저도 가끔 이런 일이发生过습니다. 브라우저의 플러그인이나 확장 프로그램 때문이거나, 제 Discourse 인스턴스에 업데이트가 필요했던 것 같습니다.

안녕하세요,

Discourse를 최신 버전(3.4.6)으로 업그레이드했습니다. 처음 3번의 시도는 게시글이 여전히 전송되지 않았고, "Oops! This page doesn’t exist or is private"라는 메시지도 뜨지 않았습니다: 그저 게시글이 동결된 것처럼 보였을 뿐입니다. 60초 이상 기다린 후 페이지를 새로고침하자 게시글이 다시 초안으로 돌아와 있었습니다.
4번째 시도에서는 2초 만에 게시에 성공했습니다.

테스트를 계속 진행하던 중, 다른 코드 블록에서 이 “동결” 문제가 다시 발생했습니다:


Test

# Import required packages
import openeo
from openeo.processes import process

# Connect to the back-end
connection = openeo.connect("https://openeo.dataspace.copernicus.eu")
# ToDo: Here you need to authenticate with authenticate_basic() or authenticate_oidc()


loadco1 = connection.load_collection(collection_id = "SENTINEL1_GRD", spatial_extent = {"east": -6.13279592954927, "north": 43.46046556339803, "south": 43.40424444976031, "west": -6.202756085062023}, temporal_extent = ["2023-09-01", "2023-09-13"])
savere1 = loadco1.save_result(format = "NETCDF")

# The process can be executed synchronously (see below), as batch job or as web service now
result = connection.execute(savere1)

제가 수행한 추가 정보/테스트:

-스테이징 환경에서 테스트 중입니다.
-플러그인/확장 프로그램이 없는 Firefox로 테스트했습니다.
-/safe-mode에서 테스트했는데, 문제가 지속됩니다.
-언어를 ```python… 으로 명시하여 테스트했는데, 문제가 지속됩니다.
-result = connection.execu
te(savere1)처럼 다음 줄로 잘라내어 테스트했는데, 문제가 지속됩니다.
-Firefox 콘솔에 오류가 없습니다.
-미리보기를 끄고 게시를 시도했는데, 문제가 지속됩니다.

제 설정:
기본 코드 언어: python
모든 코드 자동 하이라이트: 체크 해제
하이라이트 언어: (비어 있음)
코드 포맷 스타일: code-fences

다음과 같은 경우 문제가 사라집니다:
1-()를 이스케이프 처리하는 경우 (예: execute\(savere1\))
2-.execute(savere1)를 삭제하는 경우
3-코드를 부분적으로 게시한 후, 편집하여 나머지 코드를 추가하는 경우

하지만 1, 2, 3과 같은 해결책을 사용자에게 제안하고 싶지 않습니다. 이는 최상이 아니며, 어떤 키워드(예: .execute)에서 문제가 발생할지 예측할 수 없기 때문입니다.

다른 제안 사항이 있다면 공유해 주세요.

안녕하세요 @klevent. 게시물을 새로운 Support 토픽으로 이동했습니다. 문제가 해결되었나요? 분명히 아주 이상한 문제인 것 같습니다!

당신의 사이트에 게시하지 못한 코드 블록을 여기 meta에 게시할 수 있다면, 아마도 당신의 사이트에서 간섭을 일으키는 컴포넌트나 플러그인이 있을 가능성이 높습니다. 안전 모드(safe mode)로 시도해 보실 수 있을까요?

@tobiaseigen 님, 안녕하세요.

늦은 답변에 대해 감사와 함께 사과드립니다. 문제는 완전히 해결하지는 못했지만, 최신 포럼으로 업그레이드하고 게시물에 “포맷 지정 텍스트(preformatted text)” 옵션을 적용한 후 개선되었습니다.

예를 들어 재현하기가 때로는 어렵습니다.

  • 해당 문제를 겪고 있는 사용자를 임의 지정(Impersonate)하여 게시물을 시도해 보면, 게시물이 정상적으로 올라갑니다.
  • 3번 시도하면 실패하다가 4번째 시도에 성공하기도 합니다.

이에 따라 다시 시도하거나, 먼저 텍스트를 게시한 후 편집을 통해 코드 블록이나 URL을 추가하는 등 다소 미관상 좋지 않은 문제 해결 방법을 안내할 수밖에 없는 상황입니다.

다시 연락해 주셔서 감사합니다! 안전 모드에서는 작동하나요? 질문에 답을 주지 않으셨으니, 아직 시도해 보지 않으신 건가요?