我有页面跟踪/跟踪像素页面,目前正在使用$.post(对-数据)将JavaScript中收集到的信息发回服务器。最后加载为跟踪像素。
finally
{
//tracking pixel
Response.ContentType = "image/gif";
byte[] buffer = pix.BinaryData;
int len = buffer.Length;
Response.OutputStream.Write(buffer, 0, len);
}问题是,$.post(对-数据)在Chrome中被取消了,因为它是跨域的。所以我试着
$.ajax({
type: "POST",
dataType: "jsonp",
jsonp: false,
processData: false,
crossDomain: true,
url: "URL",
data: dataPairs
});这解决了跨域问题,但我现在得到了“资源解释为脚本,但使用MIME类型的映像/gif:传输”
我怎么才能解决这个问题?$.ajax电话有什么问题吗?
发布于 2013-08-22 19:40:04
ajax调用失败,因为JSONP要求服务器实际发送回JSONP (即JSON +包装器)。
如果在加载映像之前必须使用JS收集数据,则可以尝试在图像的查询字符串中传递所需的数据。
示例:
$(document).append('<img src="http://host.com/path/to/image?' + formatDataAsQueryString());
https://stackoverflow.com/questions/18389132
复制相似问题