[feat]FeedWwwAuthenticate中传递string切片,rtsp论证逻辑有此函数处理

pull/95/head
joestarzxh 4 years ago
parent 264a53f667
commit 34d33ac026

@ -34,11 +34,17 @@ type Auth struct {
Algorithm string
}
func (a *Auth) FeedWwwAuthenticate(s string, username, password string) {
func (a *Auth) FeedWwwAuthenticate(auths []string, username, password string) {
a.Username = username
a.Password = password
s = strings.TrimPrefix(s, HeaderWwwAuthenticate)
//目前只处理第一个
var s string
if len(auths)>0{
s = auths[0]
}else{
return
}
s = strings.TrimPrefix(s, HeaderWwwAuthenticate)
s = strings.TrimSpace(s)
if strings.HasPrefix(s, AuthTypeBasic) {
a.Typ = AuthTypeBasic

@ -550,8 +550,8 @@ func (session *ClientCommandSession) writeCmdReadResp(method, uri string, header
if ctx.StatusCode != "401" {
return
}
//目前只处理第一个
session.auth.FeedWwwAuthenticate(ctx.Headers.Get(HeaderWwwAuthenticate), session.urlCtx.Username, session.urlCtx.Password)
session.auth.FeedWwwAuthenticate(ctx.Headers.Values(HeaderWwwAuthenticate), session.urlCtx.Username, session.urlCtx.Password)
}
err = ErrRtsp

Loading…
Cancel
Save