此错误消息的含义是什么,如何解决?这是来自Windows 7上谷歌Chrome v33.0的控制台.
无法加载资源:net :: ERR_CONTENT_LENGTH_MISMATCH http://and.img.url/here.png
我正在尝试src使用jQuery 更改图像的属性.例如像这样(简化):
$('.image-prld').attr('src', someDynamicValue);
Run Code Online (Sandbox Code Playgroud)
页面上有大约30张图片.每次重新加载页面时,随机图像都会出现上述错误.但有时它适用于所有图像,没有任何错误.
当这种错误发生时,特别是图像显示像这样:

但是,当我在新选项卡上打开错误消息旁边的链接时,图像正在加载,这在逻辑上告诉我图像有效且存在.
我面临的问题是以下错误:
System.ComponentModel.Win32Exception(0x80004005):操作成功完成
堆栈跟踪:
at MS.Win32.UnsafeNativeMethods.RegisterClassEx(WNDCLASSEX_D wc_d)
at MS.Win32.HwndWrapper..ctor(Int32 classStyle, Int32 style, Int32 exStyle, Int32 x, Int32 y, Int32 width, Int32 height, String name, IntPtr parent, HwndWrapperHook[] hooks)
at MS.Win32.MessageOnlyHwndWrapper..ctor()
at System.Windows.Threading.Dispatcher..ctor()
at System.Windows.Threading.Dispatcher.get_CurrentDispatcher()
at System.Windows.Threading.DispatcherObject..ctor()
at System.Windows.Media.Imaging.BitmapDecoder..ctor(SafeMILHandle decoderHandle, BitmapDecoder decoder, Uri baseUri, Uri uri, Stream stream, BitmapCreateOptions createOptions, BitmapCacheOption cacheOption, Boolean insertInDecoderCache, Boolean isOriginalWritable, Stream uriStream, UnmanagedMemoryStream unmanagedMemoryStream, SafeFileHandle safeFilehandle)
at System.Windows.Media.Imaging.JpegBitmapDecoder..ctor(SafeMILHandle decoderHandle, BitmapDecoder decoder, Uri baseUri, Uri uri, Stream stream, BitmapCreateOptions createOptions, BitmapCacheOption cacheOption, Boolean insertInDecoderCache, Boolean originalWritable, Stream …Run Code Online (Sandbox Code Playgroud) 此应用程序是一个图像上传工具,可使用Plupload将图像直接从客户端浏览器上传到Amazon S3.到目前为止,除了这个问题,一切都很好.
我有这个代码用于BeforeUpload活动.
init: {
BeforeUpload: function (up, file) {
$.ajax({
url: '/ServerTime.ashx',
dataType: 'text',
data: { format: "yyyy-MM-dd_HH.mm.ss.fffffff" },
type: 'POST',
cache: false
}).done(function (data) {
console.log("Before setting ImageName: " + data);
imageName = data + ".JPG";
console.log("After setting ImageName: " + imageName);
up.settings.multipart_params = {
'key': key,
'Filename': imageName,
'acl': 'public-read',
'success_action_status': '201',
'AWSAccessKeyId': accessKey,
'policy': policyDocument,
'signature': policySignature
};
});
}
}
Run Code Online (Sandbox Code Playgroud)
但是,尝试上传文件时出现此错误:
HTTP错误.上传网址可能有误或不存在.
在控制台上,它将打印预期结果,如下所示:
在设置ImageName之前:2014-04-04_13.33.45.1155072
设置ImageName后:2014-04-04_13.33.45.1155072.JPG
我猜有些不对劲可能是因为我正在使用AJAX从服务器上获取时间.另一方面,尝试以下代码没有任何问题.
init: {
BeforeUpload: function (up, file) { …Run Code Online (Sandbox Code Playgroud) 比方说,我有一个显示alert给所有用户的按钮.当我单击按钮时,所有连接的客户端都将看到alert.
让我们说这是通过从客户端调用服务器方法来完成的,客户端调用一个函数Client来显示警报.
例如:
public class DemoHub : Hub {
public void ShowAlert(String message) {
Clients.All.showAlertMessage(message);
}
}
Run Code Online (Sandbox Code Playgroud)
这是集线器中的服务器方法,它调用客户端功能以显示警报消息.
我的问题是,警报是否也会显示给当前客户?我的意思是,如果我点击按钮,在这种情况下我是否会看到警报?
注意:上面的场景不是真实场景,这只是我的问题的类似说明,因为我当前的场景解释起来相当复杂.
说,
<a id="link-one" href="#" data-status="true">Anchor</a>
Run Code Online (Sandbox Code Playgroud)
以下代码在控制台上写入"true":
console.log($('#link-one').data('status'));
Run Code Online (Sandbox Code Playgroud)
而且,当我改变这样的值时:
$('#link-one').attr('data-status', 'false');
Run Code Online (Sandbox Code Playgroud)
值会发生变化,我可以通过使用Chrome检查器检查元素来查看.是的,它确实在变化.
但是,在更改之后再分配/更改值然后在更改后再次访问它时返回初始值,而不是修改后的新值.我需要访问当前值,即更改后的值.
console.log($('#link-one').data('status')); // writes "true"
$('#link-one').attr('data-status', 'false');
console.log($('#link-one').data('status')); // writes "true" again
Run Code Online (Sandbox Code Playgroud)
我错过了什么吗?或者这是jQuery的默认行为(如果是,我怎样才能实现我需要的)?