题目
以下取消订阅HTTP响应头事件的正确写法是A. httpRequest.in('headersReceive');B. httpRequest.off('headersReceive');C. Request.of('headersResponse');D. Request.off('headersResponse');
以下取消订阅HTTP响应头事件的正确写法是
A. httpRequest.in('headersReceive');
B. httpRequest.off('headersReceive');
C. Request.of('headersResponse');
D. Request.off('headersResponse');
题目解答
答案
B. httpRequest.off('headersReceive');
解析
本题考查HTTP请求事件的订阅与取消订阅机制,需掌握以下关键点:
- 事件解绑方法:通常使用
.off()取消订阅,而非其他非标准方法(如.in())。 - 对象一致性:解绑操作必须作用于原绑定事件的对象(如
httpRequest),避免对象不匹配。 - 事件名称准确性:HTTP响应头事件的正确名称是
headersReceive(表示响应头接收完成),而非headersResponse(可能混淆响应体相关事件)。
选项分析
选项A:httpRequest.in('headersReceive')
- 错误原因:
.in()不是标准的事件解绑方法,JavaScript中事件解绑通常使用.off()。 - 关键点:需区分事件绑定(
.on())与解绑(.off())的标准语法。
选项B:httpRequest.off('headersReceive')
- 正确性分析:
- 方法正确:使用
.off()是标准解绑操作。 - 对象一致:作用于原绑定对象
httpRequest。 - 事件名称准确:
headersReceive是响应头接收完成的正确事件名称。
- 方法正确:使用
选项C:Request.of('headersResponse')
- 错误原因:
- 对象不匹配:
Request可能与httpRequest不是同一实例,导致解绑无效。 - 事件名称错误:
headersResponse可能混淆响应体相关事件,正确名称应为headersReceive。
- 对象不匹配:
选项D:Request.off('headersResponse')
- 错误原因:
- 对象不匹配:同选项C,
Request可能未绑定事件。 - 事件名称错误:
headersResponse不是响应头接收完成的标准名称。
- 对象不匹配:同选项C,