您当前的位置: 首页 >  golang

Linux小百科

暂无认证

  • 0浏览

    0关注

    1185博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Golang判断url前缀

Linux小百科 发布时间:2022-05-31 10:26:15 ,浏览量:0

使用 Golang 实现,如果 url 没有 http 前缀,则给其加上前缀。

题目

修改 fetch 这个范例,如果输入的 url 参数没有 http:// 前缀的话,为这个 url 加上该前缀。你可能会用到 strings.HasPrefix 这个 函数。

题目解决思路

我们只需要使用 strings.HasPrefix 判断 url 是否有 http 前缀,如果没有,那么就用 字符串拼接 在 url 前面加上前缀。

代码具体实现

package main
import (
	"fmt"
	"io"
	"net/http"
	"os"
	"strings"
)
func main() {
	fmt.Println("嗨客网(www.haicoder.net)")
	for _, url := range os.Args[1:] {
		if !strings.HasPrefix(url, "http://") {
			url = strings.Join([]string{"http://", url}, "")
		}
		resp, err := http.Get(url)
		if err != nil {
			fmt.Fprintf(os.Stderr, "fetch: %v\n", err)
			os.Exit(1)
		}
		b, err := io.Copy(os.Stdout, resp.Body)
		resp.Body.Close()
		if err != nil {
			fmt.Fprintf(os.Stderr, "fetch: %v\n", err)
			os.Exit(1)
		}
		fmt.Printf("%s", b)
	}
}

我们输入以下命令行,开始运行程序:

go run haicoder.go www.haicoder.net

程序运行后,控制台输出如下:

关注
打赏
1665632672
查看更多评论
立即登录/注册

微信扫码登录

1.4456s