You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

构造Response对象时传入的url参数不生效,url字段为空如何解决?

问题原因
  • Response() 构造函数的初始化参数 init 本身不支持传入 url、ok 字段,你额外传入的这两个属性会被构造函数直接忽略。
  • ok 是 Response 的只读计算属性,会自动根据 status 值是否处于200~299区间返回布尔值,不需要手动传入。
  • url 是 Response 的只读属性,默认由浏览器根据实际请求地址赋值,手动给构造函数传无效,直接对实例的url属性赋值也会报错。
正确设置方法

你可以通过 Object.defineProperty 手动改写只读的 url 属性,示例代码如下:

var myBlob = new Blob();

var init = {
  status: 200,
  statusText: "SuperSmashingGreat!"
};

var myResponse = new Response(myBlob, init);

// 手动设置url属性
Object.defineProperty(myResponse, 'url', {
  value: "https://mywebsite.com/download?lang=en",
  writable: false // 保持只读特性,可选
});

// 如果需要修改type为basic也可以用同样方法
Object.defineProperty(myResponse, 'type', {
  value: "basic"
});

console.log(myResponse);

内容的提问来源于stack exchange,提问作者E235

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 11:36:03