现有一个采用昵称跳转新浪微博的,于是就去网上搜索相关URL;结果大部分都是采用用户ID跳转的,没有可用的答案
只找到了一个提到了根据昵称跳转,搜索结果如下:
但是这样就要放弃了么? 当然不能够;于是我进行尝试发现:
采用sinaweibo://userinfo?nick=1此时是可以跳转到新浪微博的用户昵称为 1 的个人主页的,
但是采用sinaweibo://userinfo?nick=你的名字 却不能进行跳转(打不开URL)
那这个是为什么呢? 难道不能使汉字必须用数字么?
于是我有一个大胆的想法:把汉字进行编码是不是就能识别了? 说干就干,对链接进行UTF-8编码
letweibo ="sinaweibo://userinfo?nick="+"王思聪"
letweiboStr = weibo.addingPercentEncoding(withAllowedCharacters:CharacterSet.urlQueryAllowed) ??""
ifleturl =URL(string: weiboStr),UIApplication.shared.canOpenURL(url) {
UIApplication.shared.openURL(url)
}
然后run 结果真的跳转成功了
下面附上跳转新浪微博的其他页面的链接:
sinaweibo://nearbypeople
sinaweibo://sendweibo?content=
sinaweibo://nearbyweibo
sinaweibo://userinfo?nick=
sinaweibo://userinfo?uid=
sinaweibo://browser?url=
sinaweibo://splash sinaweibo://shake
sinaweibo://contact
sinaweibo://usertrends?uid=
sinaweibo://messagelist?uid=
sinaweibo://messagelist?nick=
sinaweibo://detail?mblogid=