mirror of
https://gitee.com/xia-chu/ZLMediaKit.git
synced 2026-05-22 01:27:50 +08:00
Compare commits
2 Commits
56fe66da7c
...
dfca520857
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
dfca520857 | ||
|
|
8ff1459789 |
@ -228,6 +228,9 @@ bash build_docker_images.sh
|
||||
- [java sdk](https://github.com/lidaofu-hub/j_zlm_sdk) 本项目c sdk完整java包装库
|
||||
- [c# sdk](https://github.com/malegend/ZLMediaKit.Autogen) 本项目c sdk完整c#包装库
|
||||
- [metaRTC](https://github.com/metartc/metaRTC) 全国产纯c webrtc sdk
|
||||
|
||||
- 监控与运维
|
||||
- [ZLMediaKit_exporter](https://github.com/guohuachan/ZLMediaKit_exporter) 一个用于采集 ZLMediaKit 核心指标的 Prometheus Exporter,搭配 Grafana 即可快速构建实时监控面板
|
||||
|
||||
- 其他项目(已停止更新)
|
||||
- [NodeJS实现的GB28181平台](https://gitee.com/hfwudao/GB28181_Node_Http)
|
||||
|
||||
@ -404,6 +404,8 @@ bash build_docker_images.sh
|
||||
- [GB28181 player implemented in C++](https://github.com/any12345com/BXC_gb28181Player)
|
||||
- [Android RTCPlayer](https://github.com/leo94666/RTCPlayer)
|
||||
|
||||
- Monitor
|
||||
- [Prometheus Exporter for ZLMediaKit](https://github.com/guohuachan/ZLMediaKit_exporter)
|
||||
|
||||
## License
|
||||
|
||||
|
||||
@ -133,6 +133,10 @@ void HlsPlayer::fetchSegment() {
|
||||
if (!(*this)[Client::kNetAdapter].empty()) {
|
||||
_http_ts_player->setNetAdapter((*this)[Client::kNetAdapter]);
|
||||
}
|
||||
} else {
|
||||
// 每次请求新的ts片段时重置HttpTSPlayer状态
|
||||
_http_ts_player->clear();
|
||||
_http_ts_player->setProxyUrl((*this)[Client::kProxyUrl]);
|
||||
}
|
||||
|
||||
Ticker ticker;
|
||||
|
||||
@ -103,6 +103,8 @@ void HttpClient::clear() {
|
||||
_user_set_header.clear();
|
||||
_body.reset();
|
||||
_method.clear();
|
||||
// 重置代理连接状态
|
||||
_proxy_connected = false;
|
||||
clearResponse();
|
||||
}
|
||||
|
||||
@ -182,6 +184,8 @@ void HttpClient::onConnect_l(const SockException &ex) {
|
||||
_path.clear();
|
||||
} else {
|
||||
printer << "CONNECT " << _last_host << " HTTP/1.1\r\n";
|
||||
printer << "Host: " << _last_host << "\r\n";
|
||||
printer << "User-Agent: " << kServerName << "\r\n";
|
||||
printer << "Proxy-Connection: keep-alive\r\n";
|
||||
if (!_proxy_auth.empty()) {
|
||||
printer << "Proxy-Authorization: Basic " << _proxy_auth << "\r\n";
|
||||
@ -482,9 +486,14 @@ void HttpClient::setProxyUrl(string proxy_url) {
|
||||
}
|
||||
|
||||
bool HttpClient::checkProxyConnected(const char *data, size_t len) {
|
||||
auto ret = strstr(data, "HTTP/1.1 200 Connection established");
|
||||
_proxy_connected = ret != nullptr;
|
||||
return _proxy_connected;
|
||||
string response(data, len);
|
||||
if (response.find("HTTP/1.1 200") != string::npos || response.find("HTTP/1.0 200") != string::npos) {
|
||||
_proxy_connected = true;
|
||||
return true;
|
||||
}
|
||||
|
||||
_proxy_connected = false;
|
||||
return false;
|
||||
}
|
||||
|
||||
void HttpClient::setAllowResendRequest(bool allow) {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user