Pasted URLs in Rich Text Editor improperly escape tilde character 게시글에서 이어지는 토론입니다:
재현 방법:
위에 있는 URL을 편집기에 붙여넣어 입력했습니다:
https://frinklang.org/fsp/solve2.fsp?equations=a+%3D+3+b+%2B+c&solveFor=&f=&ev=on&sel_a=S&val_a=&sel_b=S&val_b=&sel_c=L&val_c=299792458+m+s%5E-1&resultAs=
링크를 클릭했을 때의 정상적인 응답은 다음과 같습니다:
하지만 Discourse에서 렌더링된 해당 URL은 다음과 같습니다:
https://frinklang.org/fsp/solve2.fsp?equations=a%2B%3D%2B3%2Bb%2B%2B%2Bc&solveFor=&f=&ev=on&sel_a=S&val_a=&sel_b=S&val_b=&sel_c=L&val_c=299792458%2Bm%2Bs%5E-1&resultAs=
+ 문자가 %2B로 대체된 것을 주목해 주세요. 이로 인해 실패하며 다음과 같은 결과가 생성됩니다:
하이퍼링크 도구 테스트:
Discourse-Made-Hyperlink
Discourse 링크 도구에서 렌더링된 URL:
https://frinklang.org/fsp/solve2.fsp?equations=a%2B%3D%2B3%2Bb%2B%2B%2Bc&solveFor=&f=&ev=on&sel_a=S&val_a=&sel_b=S&val_b=&sel_c=L&val_c=299792458%2Bm%2Bs%5E-1&resultAs=
이것도 실패하며, 다음과 같이 보입니다:
정확히 무엇이 잘못되고 있는지 100% 확신하지는 못하지만, 공백으로 사용되어야 할 + 문자들이 문자 그대로의 +로 잘못 처리되고 있다고 생각합니다.
URL에서 공백을 +로 사용하는 것은 HTML 폼 인코딩에 있어 표준 준수 사항이므로, 이러한 방식으로 + 문자를 사용하는 다른 사이트/시스템에도 영향을 미칠 수 있습니다.
참고: WHATWG. HTML Living Standard . “URL-encoded form data” 섹션. HTML Standard
1개의 좋아요
제가 관련 있다고 생각했지만 지금은 그렇지 않다고 생각하는 다른 문제들:
main ← fix-link-dialog
merged 06:46AM - 17 Sep 25 UTC
Regressed in: a24107dd15588b10fd7fb1c06bcfafdfef0b6d0e
Pasting in test.com/%2… 0test as a link would cause % to be double encoded to %25.
(impacts insert link in composer)
I think this was fixed in
[image]
The result is
[Horncastle boar's head](https://en.wikipedia.org/wiki/Horncastle_boar's_head)
sam
(Sam Saffron)
12월 22, 2025, 12:52오전
3
음, 이건 좀 복잡한 문제인데, oneboxer와 프론트엔드 버그 두 가지라고 생각해요:
https://frinklang.org/fsp/solve2.fsp?equations=a+%2B+b&solveFor=&f=&ev=on
vs:
<https://frinklang.org/fsp/solve2.fsp?equations=a+%2B+b&solveFor=&f=&ev=on>
vs:
https://frinklang.org/fsp/solve2.fsp?equations=a+%2B+b&solveFor=&f=&ev=on
여기 수정안이 있지만, 관련 주제에서 볼 수 있듯이 이건 정말 복잡한 문제입니다 . 몇 년간 이 영역에서 수많은 버그가 발생했거든요.
main ← plus-encode
merged 03:32AM - 23 Dec 25 UTC
Two bugs:
1. The UI for Add link was over ambitious and over encoding / unde… r encoding URLs. The main fix is using URL here which we use elsewhere in Discourse to do the encoding.
2. The Onebox system was encoding `+` which is a valid query param sub component.
1개의 좋아요
관심 가져주셔서 감사합니다!
프링크(Frink) 언어의 개발자인 앨런은 100% 표준 준수하면서도 어떤 오류든 정확히 드러내는 사람입니다. 그것이 바로 그의 전문 분야 입니다.
(참고로, 과학이나 엔지니어링 분야에서 극도로 높은 단위 정확성이 필요할 때는 프링크(Frink)를 꼭 확인해 보세요.)
1개의 좋아요