I wrote some code으로 C#의 트윗을 게시하십시오. 지금 다트에 같은 일을 할 노력하고있어Dart에서 Twitter API가 예상하는 형식으로 URL 인코딩하는 방법은 무엇입니까?
var input = "Hello Ladies + Gentlemen, a signed OAuth request!";
var expected = "Hello%20Ladies%20%2B%20Gentlemen%2C%20a%20signed%20OAuth%20request%21";
Console.WriteLine(WebUtility.UrlEncode(input) == expected); // False
Console.WriteLine(Uri.EscapeUriString(input) == expected); // False
Console.WriteLine(Uri.EscapeDataString(input) == expected); // True
: 많은 옵션이있을 것 같았다 때문에 나를 넘어 것들 중 하나는 데이터의 URL 인코딩이었다. Uri 클래스에서 모든 인코딩 메소드를 시도했지만 아무 것도 출력하지 않는 것 같습니다.
코드 : (DartPad)
print(Uri.encodeQueryComponent("Hello Ladies + Gentlemen, a signed OAuth request!"));
print(Uri.encodeFull("Hello Ladies + Gentlemen, a signed OAuth request!"));
print(Uri.encodeComponent("Hello Ladies + Gentlemen, a signed OAuth request!"));
출력 :
는Hello+Ladies+%2B+Gentlemen%2C+a+signed+OAuth+request%21
Hello%20Ladies%20+%20Gentlemen,%20a%20signed%20OAuth%20request!
Hello%20Ladies%20%2B%20Gentlemen%2C%20a%20signed%20OAuth%20request!
마지막 하나 (encodeComponent
)는 단지 느낌표가 잘못, 가장 가까운 것 같다.
필요에 따라이 인코딩을 수행하는 기존 방법이 있습니까 (C#의 EscapeDataString
과 동일)?
감사합니다. 비록 내가 내장 된 버전이 없다는 것에 정말로 놀랐지 만. 누군가는 변환 패키지에서 나를 가리켰다. 숫자가 실패한 것을 제외하면 더 가깝다. https://github.com/dart-lang/convert/issues/3 –