Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
Z
ZLMediaKit
概览
Overview
Details
Activity
Cycle Analytics
版本库
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
问题
0
Issues
0
列表
Board
标记
里程碑
合并请求
0
Merge Requests
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
Snippets
成员
Collapse sidebar
Close sidebar
活动
图像
聊天
创建新问题
作业
提交
Issue Boards
Open sidebar
张翔宇
ZLMediaKit
Commits
03e9c09c
Commit
03e9c09c
authored
3 years ago
by
ziyue
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修复FullUrl()未url转义导致的bug
parent
626bf3dc
隐藏空白字符变更
内嵌
并排
正在显示
4 个修改的文件
包含
12 行增加
和
18 行删除
+12
-18
api/include/mk_events_objects.h
+0
-2
api/source/mk_events_objects.cpp
+0
-5
src/Common/Parser.cpp
+11
-9
src/Common/Parser.h
+1
-2
没有找到文件。
api/include/mk_events_objects.h
查看文件 @
03e9c09c
...
...
@@ -47,8 +47,6 @@ typedef void* mk_parser;
API_EXPORT
const
char
*
API_CALL
mk_parser_get_method
(
const
mk_parser
ctx
);
//Parser::Url(),获取HTTP的访问url(不包括?后面的参数)
API_EXPORT
const
char
*
API_CALL
mk_parser_get_url
(
const
mk_parser
ctx
);
//Parser::FullUrl(),包括?后面的参数
API_EXPORT
const
char
*
API_CALL
mk_parser_get_full_url
(
const
mk_parser
ctx
);
//Parser::Params(),?后面的参数字符串
API_EXPORT
const
char
*
API_CALL
mk_parser_get_url_params
(
const
mk_parser
ctx
);
//Parser::getUrlArgs()["key"],获取?后面的参数中的特定参数
...
...
This diff is collapsed.
Click to expand it.
api/source/mk_events_objects.cpp
查看文件 @
03e9c09c
...
...
@@ -90,11 +90,6 @@ API_EXPORT const char* API_CALL mk_parser_get_url(const mk_parser ctx){
Parser
*
parser
=
(
Parser
*
)
ctx
;
return
parser
->
Url
().
c_str
();
}
API_EXPORT
const
char
*
API_CALL
mk_parser_get_full_url
(
const
mk_parser
ctx
){
assert
(
ctx
);
Parser
*
parser
=
(
Parser
*
)
ctx
;
return
parser
->
FullUrl
().
c_str
();
}
API_EXPORT
const
char
*
API_CALL
mk_parser_get_url_params
(
const
mk_parser
ctx
){
assert
(
ctx
);
Parser
*
parser
=
(
Parser
*
)
ctx
;
...
...
This diff is collapsed.
Click to expand it.
src/Common/Parser.cpp
查看文件 @
03e9c09c
...
...
@@ -49,16 +49,16 @@ void Parser::Parse(const char *buf) {
}
if
(
start
==
buf
)
{
_strMethod
=
FindField
(
line
.
data
(),
NULL
,
" "
);
_
strFullUrl
=
FindField
(
line
.
data
(),
" "
,
" "
);
auto
args_pos
=
_
strFullUrl
.
find
(
'?'
);
auto
strFullUrl
=
FindField
(
line
.
data
(),
" "
,
" "
);
auto
args_pos
=
strFullUrl
.
find
(
'?'
);
if
(
args_pos
!=
string
::
npos
)
{
_strUrl
=
_
strFullUrl
.
substr
(
0
,
args_pos
);
_params
=
_
strFullUrl
.
substr
(
args_pos
+
1
);
_strUrl
=
strFullUrl
.
substr
(
0
,
args_pos
);
_params
=
strFullUrl
.
substr
(
args_pos
+
1
);
_mapUrlArgs
=
parseArgs
(
_params
);
}
else
{
_strUrl
=
_
strFullUrl
;
_strUrl
=
strFullUrl
;
}
_strTail
=
FindField
(
line
.
data
(),
(
_
strFullUrl
+
" "
).
data
(),
NULL
);
_strTail
=
FindField
(
line
.
data
(),
(
strFullUrl
+
" "
).
data
(),
NULL
);
}
else
{
auto
field
=
FindField
(
line
.
data
(),
NULL
,
": "
);
auto
value
=
FindField
(
line
.
data
(),
": "
,
NULL
);
...
...
@@ -82,8 +82,11 @@ const string &Parser::Url() const {
return
_strUrl
;
}
const
string
&
Parser
::
FullUrl
()
const
{
return
_strFullUrl
;
string
Parser
::
FullUrl
()
const
{
if
(
_params
.
empty
())
{
return
_strUrl
;
}
return
_strUrl
+
"?"
+
_params
;
}
const
string
&
Parser
::
Tail
()
const
{
...
...
@@ -105,7 +108,6 @@ const string &Parser::Content() const {
void
Parser
::
Clear
()
{
_strMethod
.
clear
();
_strUrl
.
clear
();
_strFullUrl
.
clear
();
_params
.
clear
();
_strTail
.
clear
();
_strContent
.
clear
();
...
...
This diff is collapsed.
Click to expand it.
src/Common/Parser.h
查看文件 @
03e9c09c
...
...
@@ -69,7 +69,7 @@ public:
//获取中间url,不包含?后面的参数
const
string
&
Url
()
const
;
//获取中间url,包含?后面的参数
const
string
&
FullUrl
()
const
;
string
FullUrl
()
const
;
//获取命令协议名
const
string
&
Tail
()
const
;
//根据header key名,获取请求header value值
...
...
@@ -96,7 +96,6 @@ private:
string
_strTail
;
string
_strContent
;
string
_strNull
;
string
_strFullUrl
;
string
_params
;
mutable
StrCaseMap
_mapHeaders
;
mutable
StrCaseMap
_mapUrlArgs
;
...
...
This diff is collapsed.
Click to expand it.
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论