Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
github
fetch
提交
016a2f47
F
fetch
项目概览
github
/
fetch
8 个月 前同步成功
通知
30
Star
25765
Fork
3216
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
F
fetch
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
016a2f47
编写于
1月 18, 2016
作者:
M
Mislav Marohnić
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'content-type-body'
上级
4e00ced5
3b5dc9c1
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
81 addition
and
3 deletion
+81
-3
fetch.js
fetch.js
+9
-1
test/test.js
test/test.js
+72
-2
未找到文件。
fetch.js
浏览文件 @
016a2f47
...
@@ -140,6 +140,14 @@
...
@@ -140,6 +140,14 @@
}
else
{
}
else
{
throw
new
Error
(
'
unsupported BodyInit type
'
)
throw
new
Error
(
'
unsupported BodyInit type
'
)
}
}
if
(
!
this
.
headers
.
get
(
'
content-type
'
))
{
if
(
typeof
body
===
'
string
'
)
{
this
.
headers
.
set
(
'
content-type
'
,
'
text/plain;charset=UTF-8
'
)
}
else
if
(
this
.
_bodyBlob
&&
this
.
_bodyBlob
.
type
)
{
this
.
headers
.
set
(
'
content-type
'
,
this
.
_bodyBlob
.
type
)
}
}
}
}
if
(
support
.
blob
)
{
if
(
support
.
blob
)
{
...
@@ -276,13 +284,13 @@
...
@@ -276,13 +284,13 @@
options
=
{}
options
=
{}
}
}
this
.
_initBody
(
bodyInit
)
this
.
type
=
'
default
'
this
.
type
=
'
default
'
this
.
status
=
options
.
status
this
.
status
=
options
.
status
this
.
ok
=
this
.
status
>=
200
&&
this
.
status
<
300
this
.
ok
=
this
.
status
>=
200
&&
this
.
status
<
300
this
.
statusText
=
options
.
statusText
this
.
statusText
=
options
.
statusText
this
.
headers
=
options
.
headers
instanceof
Headers
?
options
.
headers
:
new
Headers
(
options
.
headers
)
this
.
headers
=
options
.
headers
instanceof
Headers
?
options
.
headers
:
new
Headers
(
options
.
headers
)
this
.
url
=
options
.
url
||
''
this
.
url
=
options
.
url
||
''
this
.
_initBody
(
bodyInit
)
}
}
Body
.
call
(
Response
.
prototype
)
Body
.
call
(
Response
.
prototype
)
...
...
test/test.js
浏览文件 @
016a2f47
...
@@ -312,7 +312,7 @@ suite('Request', function() {
...
@@ -312,7 +312,7 @@ suite('Request', function() {
body
:
'
I work out
'
,
body
:
'
I work out
'
,
headers
:
{
headers
:
{
accept
:
'
application/json
'
,
accept
:
'
application/json
'
,
'
Content-Type
'
:
'
text/plain
'
'
X-Request-ID
'
:
'
123
'
}
}
})
})
var
request2
=
new
Request
(
request1
,
{
var
request2
=
new
Request
(
request1
,
{
...
@@ -320,7 +320,7 @@ suite('Request', function() {
...
@@ -320,7 +320,7 @@ suite('Request', function() {
})
})
assert
.
equal
(
request2
.
headers
.
get
(
'
accept
'
),
undefined
)
assert
.
equal
(
request2
.
headers
.
get
(
'
accept
'
),
undefined
)
assert
.
equal
(
request2
.
headers
.
get
(
'
content-type
'
),
undefined
)
assert
.
equal
(
request2
.
headers
.
get
(
'
x-request-id
'
),
undefined
)
assert
.
equal
(
request2
.
headers
.
get
(
'
x-test
'
),
'
42
'
)
assert
.
equal
(
request2
.
headers
.
get
(
'
x-test
'
),
'
42
'
)
})
})
...
@@ -356,6 +356,56 @@ suite('Request', function() {
...
@@ -356,6 +356,56 @@ suite('Request', function() {
})
})
})
})
test
(
'
GET should not have implicit Content-Type
'
,
function
()
{
var
req
=
new
Request
(
'
https://fetch.spec.whatwg.org/
'
)
assert
.
equal
(
req
.
headers
.
get
(
'
content-type
'
),
undefined
)
})
test
(
'
POST with blank body should not have implicit Content-Type
'
,
function
()
{
var
req
=
new
Request
(
'
https://fetch.spec.whatwg.org/
'
,
{
method
:
'
post
'
})
assert
.
equal
(
req
.
headers
.
get
(
'
content-type
'
),
undefined
)
})
test
(
'
construct with string body sets Content-Type header
'
,
function
()
{
var
req
=
new
Request
(
'
https://fetch.spec.whatwg.org/
'
,
{
method
:
'
post
'
,
body
:
'
I work out
'
})
assert
.
equal
(
req
.
headers
.
get
(
'
content-type
'
),
'
text/plain;charset=UTF-8
'
)
})
featureDependent
(
test
,
support
.
blob
,
'
construct with Blob body and type sets Content-Type header
'
,
function
()
{
var
req
=
new
Request
(
'
https://fetch.spec.whatwg.org/
'
,
{
method
:
'
post
'
,
body
:
new
Blob
([
'
test
'
],
{
type
:
'
image/png
'
})
})
assert
.
equal
(
req
.
headers
.
get
(
'
content-type
'
),
'
image/png
'
)
})
test
(
'
construct with body and explicit header uses header
'
,
function
()
{
var
req
=
new
Request
(
'
https://fetch.spec.whatwg.org/
'
,
{
method
:
'
post
'
,
headers
:
{
'
Content-Type
'
:
'
image/png
'
},
body
:
'
I work out
'
})
assert
.
equal
(
req
.
headers
.
get
(
'
content-type
'
),
'
image/png
'
)
})
featureDependent
(
test
,
support
.
blob
,
'
construct with Blob body and explicit Content-Type header
'
,
function
()
{
var
req
=
new
Request
(
'
https://fetch.spec.whatwg.org/
'
,
{
method
:
'
post
'
,
headers
:
{
'
Content-Type
'
:
'
image/png
'
},
body
:
new
Blob
([
'
test
'
],
{
type
:
'
text/plain
'
})
})
assert
.
equal
(
req
.
headers
.
get
(
'
content-type
'
),
'
image/png
'
)
})
test
(
'
clone request
'
,
function
()
{
test
(
'
clone request
'
,
function
()
{
var
req
=
new
Request
(
'
https://fetch.spec.whatwg.org/
'
,
{
var
req
=
new
Request
(
'
https://fetch.spec.whatwg.org/
'
,
{
method
:
'
post
'
,
method
:
'
post
'
,
...
@@ -528,6 +578,26 @@ suite('Response', function() {
...
@@ -528,6 +578,26 @@ suite('Response', function() {
assert
.
equal
(
r
.
status
,
301
)
assert
.
equal
(
r
.
status
,
301
)
assert
.
equal
(
r
.
headers
.
get
(
'
Location
'
),
'
https://fetch.spec.whatwg.org/
'
)
assert
.
equal
(
r
.
headers
.
get
(
'
Location
'
),
'
https://fetch.spec.whatwg.org/
'
)
})
})
test
(
'
construct with string body sets Content-Type header
'
,
function
()
{
var
r
=
new
Response
(
'
I work out
'
)
assert
.
equal
(
r
.
headers
.
get
(
'
content-type
'
),
'
text/plain;charset=UTF-8
'
)
})
featureDependent
(
test
,
support
.
blob
,
'
construct with Blob body and type sets Content-Type header
'
,
function
()
{
var
r
=
new
Response
(
new
Blob
([
'
test
'
],
{
type
:
'
text/plain
'
}))
assert
.
equal
(
r
.
headers
.
get
(
'
content-type
'
),
'
text/plain
'
)
})
test
(
'
construct with body and explicit header uses header
'
,
function
()
{
var
r
=
new
Response
(
'
I work out
'
,
{
headers
:
{
'
Content-Type
'
:
'
text/plain
'
},
})
assert
.
equal
(
r
.
headers
.
get
(
'
content-type
'
),
'
text/plain
'
)
})
})
})
// https://fetch.spec.whatwg.org/#body-mixin
// https://fetch.spec.whatwg.org/#body-mixin
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录