为了账号安全,请及时绑定邮箱和手机立即绑定

斯堪的纳维亚字符在 go-lang go-instagram API 绑定中不起作用

斯堪的纳维亚字符在 go-lang go-instagram API 绑定中不起作用

Go
紫衣仙女 2021-11-22 18:30:53
我正试图解决这个开源库 ( https://github.com/carbocation/go-instagram/ ) 中多字节支持似乎存在的问题。我正在使用下面的代码来检索有关瑞典语标签 blue 的信息。尝试时我怎么会得到一个空数组。fmt.Println("Starting instagram download.")client := instagram.NewClient(nil)client.ClientID = "myid"media, _, _ := client.Tags.RecentMedia("blå", nil)fmt.Println(media)我曾尝试通过浏览器使用 api,并且有几张带有该标签的图片。我还尝试使用带有英文标签的代码片段,例如 blue 并且也返回最新的图片。如果有人能解释为什么会发生这种情况,我会很高兴。我想更新 lib,使其支持多字节,但我没有所需的 go 知识。这是一个问题还是图书馆的问题?
查看完整描述

1 回答

?
Smart猫小萌

TA贡献1911条经验 获得超7个赞

问题出在validTagName():


// Strip out things we know Instagram won't accept. For example, hyphens.

func validTagName(tagName string) (bool, error) {

    //\W matches any non-word character

    reg, err := regexp.Compile(`\W`)

    if err != nil {

        return false, err

    }


    if reg.MatchString(tagName) {

        return false, nil

    }


    return true, nil

}

在 Go 中,\W精确匹配[^0-9A-Za-z_]. 此验证检查不正确。


查看完整回答
反对 回复 2021-11-22
  • 1 回答
  • 0 关注
  • 122 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信