//1.根据返回字符串response判断是要进行基本认证,还是要进行数字摘要认证
string PatternDigest("WWW-Authenticate: *Digest +realm=\"([a-zA-Z_0-9 ]+)\", *nonce=\"([a-zA-Z0-9]+)\"");
string PatternBasic("WWW-Authenticate: *Basic +realm=\"([a-zA-Z_0-9 ]+)\"");
string RealmTmp("");
stringstream Msg("");
string RtspUri = m_rtspURI;
Msg << cmd << " " << RtspUri << " " << "RTSP/" << VERSION_RTSP << "\r\n";
Msg << "CSeq: " << ++m_rtspCSeq << "\r\n";
smatch result;
if(regex_search(m_rtspResponse,result,regex(PatternDigest)))
{
string Md5Response("");
string NonceTmp("");
RealmTmp.assign(result[1].str());
NonceTmp.assign(result[2].str());
m_Realm.assign(RealmTmp);
m_Nonce.assign(NonceTmp);
//进行认证
Md5Response
rtsp认证方法
最新推荐文章于 2024-08-05 00:00:00 发布
本文深入探讨RTSP(实时流协议)的认证流程,包括基本原理、常见的认证方法如Basic Auth和Digest Auth,以及如何在实际应用中配置和安全使用这些认证机制。
摘要由CSDN通过智能技术生成