我想设置overrideMimeType(“application / json”);使用Ajax.Request。
据我所知,我认为我应该使用onCreate
选项,如下所示:
new Ajax.Request("x.json", {onCreate: function() {...}});
然后在xhr上设置overrideMimeType("application/json");
,除了我不确定如何从这个onCreate
函数引用xhr。 xhr不是this
而且不是arguments[0]
afaict。
如何在xhr上设置overrideMimeType("application/json");
答案 0 :(得分:3)
在onCreate
功能中尝试添加:
arguments[0].request.transport.overrideMimeType('application/json');
或:
arguments[0].transport.overrideMimeType('application/json');
这有点像黑客,Prototype选择不在他们的API中公开这个功能,大概是因为它不是跨浏览器安全的。到那时,您应该知道在IE或Opera中不能使用overrideMimeType。如果您仍想使用它,则应确保检查XMLHttpResponse对象上是否存在该方法。
希望这有帮助。