Hatalı biçimlendirilmiş URI'lerde sık karşılaşılan ancak içerilmemesi gereken karakterler gibi yaygın sorunları düzeltebilen iyi bir Scala veya Java kitaplığı olduğunu bilen var mı?Hatalı biçimlendirilmiş URI'leri düzeltmek için Scala veya Java Kitaplığı
7
A
cevap
3
Herhangi bir geçerli çözüm bulduğumu hissetmeden, şimdiki eski URIUtil HTTPClient dahil olmak üzere birkaç kitaplığı test ettim.
/**
* Tries to construct an url by breaking it up into its smallest elements
* and encode each component individually using the full URI constructor:
*
* foo://example.com:8042/over/there?name=ferret#nose
* \_/ \______________/\_________/ \_________/ \__/
* | | | | |
* scheme authority path query fragment
*/
public URI parseUrl(String s) throws Exception {
URL u = new URL(s);
return new URI(
u.getProtocol(),
u.getAuthority(),
u.getPath(),
u.getQuery(),
u.getRef());
}
aşağıdaki rutin kombinasyonu kullanılabilir: Genellikle, olsa java.net.URI Bu tip yapıda yeterince başarı elde ettik. Kod çözülmüş dize değişmeyene kadar bir URL
kodunu tekrar tekrar çözer, bu da örneğin çift kodlamasına karşı yararlı olabilir. basit tutmak, Not, bu örnek özelliği olmayan herhangi yedekli vb
public String urlDecode(String url, String encoding) throws UnsupportedEncodingException, IllegalArgumentException {
String result = URLDecoder.decode(url, encoding);
return result.equals(url) ? result : urlDecode(result, encoding);
}
1
Ben yüzde kodlama URI'ler için
java.net.URLEncoder
kullanılmamasını tavsiye ediyorum
. Adı rağmen buna rfc3986 standart takip etmez olarak URL'leri kodlamak için büyük değil ve bunun yerine application/x-www-form-urlencoded
MIME biçiminde (read more here) Scala URI'ları ben sprey-http Uri sınıf öneriyoruz kodlayan için
için kodlar. scala-uri bir alternatiftir (yasal uyarı: Ben yazarım).
İlgili konular
- 1. Hatalı biçimlendirilmiş XML
- 2. : komut dosyasından hatalı biçimlendirilmiş başlık. Hatalı başlık
- 3. sahip Nasıl Jersey hatalı biçimlendirilmiş başlıkları
- 4. Ayrıştırma hatalı biçimlendirilmiş/eksik/geçersiz XML dosyaları
- 5. Scala 2D Animasyon kitaplığı
- 6. Java için SVG yapı kitaplığı
- 7. XSLT hatalı biçimlendirilmiş XML hatası veriyor <br> etiketi
- 8. Retrofit 2'de hatalı biçimlendirilmiş JSON nasıl edinilir
- 9. Exchange sunucu takvimi içinde hatalı biçimlendirilmiş HTML'yi davet et
- 10. nasıl "org.apache.kafka.clients.consumer.ConsumerRecord java.io.NotSerializableException" düzeltmek için?
- 11. Java CVS kitaplığı
- 12. Java için genel amaçlı dağıtılmış programlama kitaplığı
- 13. Java için FIPS uyumlu SSH kitaplığı
- 14. Node.js veya Javascript kitaplığı için DWG dönüştürücü
- 15. Scala kaynak kodu dönüştürme için otomatik Java?
- 16. Scala değerinin java
- 17. scala vs java?
- 18. Eylem/rota düzeltmek için eylem yönlendirildi mi?
- 19. Biçimlendirme iyi biçimlendirilmiş
- 20. Standart lib veya Scala.2.10.1 için Akka?
- 21. Scala kurtarma veya kurtarma
- 22. Java için iyi desteklenen bir besleme oluşturma kitaplığı var mı?
- 23. Python: Biçimlendirilmiş metne biçimlendirilmiş metin nasıl dönüştürülür
- 24. .NET için SMS Kitaplığı
- 25. Yasadışı başlangıç, nasıl düzeltmek için bu
- 26. Scala
- 27. C++ için gramer denetleyicisi kitaplığı
- 28. Scala'da biçimlendirilmiş XML oluşturma
- 29. Hangi Javascript işlevsel kitaplığı: Underscore veya wu.js veya İşlevsel veya ...?
- 30. Postgres: eksik veya hatalı pg_hba.conf dosyası