XMLHttpRequest corrupts headers named after Object prototype properties
还没有人认领这个 Issue。
- 主要语言
- C++
- 星标
- 127k
- 派生
- 25.3k
- 平均合并
- 1 天 23 小时
- 30 天内合并 PR
- 4
描述
Description
React Native XMLHttpRequest stores request headers and normalized response headers in ordinary objects. Valid header names that collide with Object.prototype are therefore corrupted or hidden: repeated Constructor values begin with inherited function text, __proto__ cannot be stored normally, and an absent toString response header is returned as an inherited function instead of null.
Expected behavior
All valid case-insensitive header names should be stored, combined, and retrieved as their own values without interacting with JavaScript object prototypes.
React Native Version
0.87.1 and current main
Affected Platforms
JavaScript networking - All
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
从 React Native 的 XMLHttpRequest 实现开始,检查请求头和规范化响应头是如何存储和获取的。查找或添加针对 Constructor、proto 和缺失的 toString 请求头的专门测试;完成标准是,有效的不区分大小写的名称能够保留各自的值,且不会与 Object.prototype 发生交互。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- javascript, react-native
- 领域
- mobile, networking
- Issue 类型
- 缺陷
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 活跃度
- 活跃
- 描述清晰度
- 基本清楚
- 新手友好度
- 68/100