亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

無效的 URL 轉義 “%+o”

無效的 URL 轉義 “%+o”

Go
MMMHUHU 2022-08-01 17:10:00
我需要解析URL(來自各種來源)并從中獲取通常的嫌疑人:主機,查詢, ...我寫了下面的代碼(可在這里運行):package mainimport (    "fmt"    "log"    "net/url")func gethost(line string) string {    u, err := url.Parse(line)    if err != nil {        log.Fatal(err)    }    return string(u.Host)}func main() {    host := gethost("https://www.percent-off.com/_20_%+off_60000_")    fmt.Println(host)}失敗,錯誤為:解析“https://www.percent-off.com/ 20%+off_60000_”:無效的URL轉義“%+o”我注意到許多關于模塊net/url的類似問題,這些問題涉及無效的url轉義。在 DotNet 中,等效代碼運行良好并正確返回。using System;Console.WriteLine(new Uri("https://www.percent-off.com/_20_%+off_60000_").Host);有沒有更可靠的方法來解析Go中的URL?
查看完整描述

1 回答

?
jeck貓

TA貢獻1909條經驗 獲得超7個贊

在 Go 問題跟蹤器上也提出了相同的基本問題。

TL;DR;有問題的URL(包括您的URL和鏈接問題中的URL)顯然是無效的,因此錯誤是正確的。

也就是說,關于使解析器對此類錯誤更加寬容的討論一直在討論,但顯然還沒有制定任何結論或行動計劃。

如果您確實需要此支持,則可能必須編寫自己的URL解析器。


查看完整回答
反對 回復 2022-08-01
  • 1 回答
  • 0 關注
  • 180 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號