为 Javascript 中的提取设置 headers 时,哪种做法更好?
Which is better practice when setting headers for a fetch in Javascript?
像这样使用新的 Headers() object 设置 headers 以获取数据有什么区别。
const headers = new Headers()
headers.set('User','Bob')
与使用更少的代码分配所需的 headers 而不是使用新的 Header() class.
const headers = { User: 'Bob'}
在 JavaScript 中执行 fetch
时。
如果两者都获得相似的结果,那么在获取数据时哪一个是最佳实践?
Headers
object 的行为与 Map
类似,主要区别在于 header 键不区分大小写。
headers:
var headers = new Headers();
headers.set('CONTENT-tYpE', 'text/html');
console.log(headers.get('content-type')); // text/html
地图:
var headers = new Map();
headers.set('CONTENT-tYpE', 'text/html');
console.log(headers.get('content-type')); // undefined
object:
var headers = {};
headers['CONTENT-tYpE'] = 'text/html';
console.log(headers['content-type']); // undefined
(当传递给 fetch 或 http 请求时,所有 header 名称都被规范化,无论数据类型如何)
我厌倦了人们试图为 JavaScript 中的所有内容定义单一的“最佳实践”。这里的答案是,就 fetch API 而言,没有“更好”的方法。
根据您在调用 fetch 之前所做的操作,乱码 object 或 Headers 的实例可能看起来 nicer。例如,从 JSON 配置中硬编码 headers ,实例化 Headers 会浪费代码;另一方面,如果您需要编写一些逻辑来生成要包含的 headers 和 select,Headers 有更明确和 case-insensitive(即更安全)的方法.
但这只是我的 意见 我认为是 clear-cut 个例子。我敢肯定有人会建议始终使用文字,因为他们想要不变性,而其他人会说 Headers 更具表现力和更好的类型。无论哪种方式,这都不是 Whosebug 的目的。
像这样使用新的 Headers() object 设置 headers 以获取数据有什么区别。
const headers = new Headers()
headers.set('User','Bob')
与使用更少的代码分配所需的 headers 而不是使用新的 Header() class.
const headers = { User: 'Bob'}
在 JavaScript 中执行 fetch
时。
如果两者都获得相似的结果,那么在获取数据时哪一个是最佳实践?
Headers
object 的行为与 Map
类似,主要区别在于 header 键不区分大小写。
headers:
var headers = new Headers();
headers.set('CONTENT-tYpE', 'text/html');
console.log(headers.get('content-type')); // text/html
地图:
var headers = new Map();
headers.set('CONTENT-tYpE', 'text/html');
console.log(headers.get('content-type')); // undefined
object:
var headers = {};
headers['CONTENT-tYpE'] = 'text/html';
console.log(headers['content-type']); // undefined
(当传递给 fetch 或 http 请求时,所有 header 名称都被规范化,无论数据类型如何)
我厌倦了人们试图为 JavaScript 中的所有内容定义单一的“最佳实践”。这里的答案是,就 fetch API 而言,没有“更好”的方法。
根据您在调用 fetch 之前所做的操作,乱码 object 或 Headers 的实例可能看起来 nicer。例如,从 JSON 配置中硬编码 headers ,实例化 Headers 会浪费代码;另一方面,如果您需要编写一些逻辑来生成要包含的 headers 和 select,Headers 有更明确和 case-insensitive(即更安全)的方法.
但这只是我的 意见 我认为是 clear-cut 个例子。我敢肯定有人会建议始终使用文字,因为他们想要不变性,而其他人会说 Headers 更具表现力和更好的类型。无论哪种方式,这都不是 Whosebug 的目的。