http客户端支持简单验证协议 (#1289)

* 加速track的准备速度

* 重命名为isAllTrackReady

* 无须缓冲帧时,暂不用转换为可缓存帧

* 支持简单验证协议

* 优化代码

Co-authored-by: 夏楚 <771730766@qq.com>
This commit is contained in:
alexliyu7352 2021-12-17 17:48:05 +08:00 committed by GitHub
parent 0b2e55429d
commit 0d5ef99724
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -9,6 +9,7 @@
*/ */
#include <cstdlib> #include <cstdlib>
#include "Util/base64.h"
#include "HttpClient.h" #include "HttpClient.h"
#include "Common/config.h" #include "Common/config.h"
@ -39,6 +40,13 @@ void HttpClient::sendRequest(const string &strUrl, float fTimeOutSec) {
if (_path.empty()) { if (_path.empty()) {
_path = "/"; _path = "/";
} }
auto pos = host.find('@');
if (pos != string::npos) {
//去除?后面的字符串
auto authStr = host.substr(0, pos);
host = host.substr(pos + 1, host.size());
_header.emplace("Authorization", "Basic " + encodeBase64(authStr));
}
auto host_header = host; auto host_header = host;
uint16_t port = atoi(FindField(host.data(), ":", NULL).data()); uint16_t port = atoi(FindField(host.data(), ":", NULL).data());
if (port <= 0) { if (port <= 0) {
@ -322,4 +330,4 @@ void HttpClient::checkCookie(HttpClient::HttpHeader &headers) {
} }
} }
} /* namespace mediakit */ } /* namespace mediakit */