Go调用浏览访问url链接

TechMojotv · · 4926 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

golang_horse.jpg

1.背景

开发程序的时候,需要打开浏览器,省去用户自己手动打开的麻烦,在golang中有方式可以直接代开,

start, xdg-open 分别是windows和mac, linux打开系统默认程序的工具,
所以你要使用谷歌打开就必须要把谷歌浏览器设置为默认,
linux下不要使用root权限使用xdg-open,windows下失败可以尝试在管理员权限下的cmd执行你的程序,

  • windows 执行命令 cmd /C start htttp://tech.mojotv.cn
  • linux/freebsd/openbsd/netbsd 执行命令 xdg-open http://tech.mojotv.cn
  • mac 执行命令 start http://tech.mojotv.cn

2.代码

程序我就偷懒不写了,调用子程序就行了.go在windows下好像不需要 cmd /C,好像会自动使用shell
我们下边直接用代码展示一下

import (
    "os/exec"
)
// open opens the specified URL in the default browser of the user.
func open(url string) error {
    var cmd string
    var args []string

    switch runtime.GOOS {
    case "windows":
        cmd = "cmd"
        args = []string{"/c", "start"}
    case "darwin":
        cmd = "open"
    default: // "linux", "freebsd", "openbsd", "netbsd"
        cmd = "xdg-open"
    }
    args = append(args, url)
    return exec.Command(cmd, args...).Start()
}

3.windows无GUI调用浏览器

package main

import (
    "os/exec"
)
func main() {
    // 无GUI调用
    cmd := exec.Command("cmd", "/c", "start", "https://tech.mojotv.cn")
    cmd.SysProcAttr = &syscall.SysProcAttr{HideWindow: true}
    cmd.Start()
}

4.参考


有疑问加站长微信联系(非本文作者)

本文来自:Segmentfault

感谢作者:TechMojotv

查看原文:Go调用浏览访问url链接

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

4926 次点击  ∙  1 赞  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传