小编Sir*_*mon的帖子

压缩jQuery的Web服务响应

我试图通过jQuery从客户端使用ASMX Web服务gzip JSON响应.

我的web.config已经像这样设置了httpCompression :(我正在使用IIS 7)

<httpCompression directory="%SystemDrive%\inetpub\temp\IIS Temporary Compressed Files" 
    staticCompressionDisableCpuUsage="90" staticCompressionEnableCpuUsage="60" 
    dynamicCompressionDisableCpuUsage="80" dynamicCompressionEnableCpuUsage="50">
    <dynamicTypes>
        <add mimeType="application/javascript" enabled="true"/>
        <add mimeType="application/x-javascript" enabled="true"/>
        <add mimeType="text/css" enabled="true"/>
        <add mimeType="video/x-flv" enabled="true"/>
        <add mimeType="application/x-shockwave-flash" enabled="true"/>
        <add mimeType="text/javascript" enabled="true"/>
        <add mimeType="text/*" enabled="true"/>
        <add mimeType="application/json; charset=utf-8" enabled="true"/>
    </dynamicTypes>
    <staticTypes>
        <add mimeType="application/javascript" enabled="true"/>
        <add mimeType="application/x-javascript" enabled="true"/>
        <add mimeType="text/css" enabled="true"/>
        <add mimeType="video/x-flv" enabled="true"/>
        <add mimeType="application/x-shockwave-flash" enabled="true"/>
        <add mimeType="text/javascript" enabled="true"/>
        <add mimeType="text/*" enabled="true"/>
    </staticTypes>
    <scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll"/>
</httpCompression>
<urlCompression doDynamicCompression="true" doStaticCompression="true"/>
Run Code Online (Sandbox Code Playgroud)

通过提琴手我可以看到正常的aspx和其他按压工作正常.但是,jQuery ajax请求和响应应该工作,只有没有得到压缩.

我错过了什么?

compression iis-7 gzip web-services asmx

9
推荐指数
4
解决办法
6118
查看次数

如何编写一个函数来调用另一个函数并捕获一些异常?

我有一系列具有不同参数签名的函数:

public void function1 (string s1, string s1, string s3, string s4) {...}
public void function2 (int i1, int i2, string s3, string s4) {...}    
public void function3 (int i1, string s2, int i3, string s4) {...}
.
.
etc //some 30 odd functions
Run Code Online (Sandbox Code Playgroud)

调用每个函数可能会抛出一组异常,如TimeoutException,CommunicationException等(是的,这些是WCF代理函数)

现在我必须将这些调用包装在try catch块中,但DRY原则说我写错了很多相同的try catch块:

public void Interfacefunction1 (...) {
    try {
        function1 (...);
    }
    catch (TimeoutException) {
        taskResult.Success = false;
        taskResult.Message = Resources.ServerConnectionBroke;
    }            
    catch (CommunicationException) {
        taskResult.Success = false;
        taskResult.Message = Resources.CommunicationFailed;
    }
}

//and... …
Run Code Online (Sandbox Code Playgroud)

.net c# exception

2
推荐指数
1
解决办法
486
查看次数

使用ng-file-upload指令将文件上载到sails.js服务器

我正在尝试使用以下指令将文件上传到sails.js应用程序服务器: ng-file-upload

我的客户端上传已经选择的图像是这样的:

$upload.upload({
        url:'upload/item-image',
        headers:{
            'Content-Type': 'multipart/form-data'
        },
        data:{blah:'blah'},
        file: $scope.uploadFile,
        fileName:$scope.uploadFile.name
    }).success(function(data){
        console.log(data);
    }).error(function(err){
        console.log(err);
    });
Run Code Online (Sandbox Code Playgroud)

我在服务器上处理上传的sails.js控制器方法如下所示:

upload: function (req, res) {
    req.file('item-image').upload(function (err, files) {
        if (err)
            return res.serverError(err);
        if(!files.length)
            return res.serverError('No files received for upload.');

        var file = files[0];
   ...
   }
...
}
Run Code Online (Sandbox Code Playgroud)

但是,在调用服务器函数时,并且正文上的json数据存在,req.file('无论放在何处')回调没有找到任何文件.

提前致谢.

javascript file-upload node.js angularjs sails.js

2
推荐指数
1
解决办法
1680
查看次数