小编Ada*_*dam的帖子

扩展console.log而不影响日志行

我想扩展'console.log'函数以向其输出添加其他信息 - 但我不想影响浏览器在控制台窗口中生成的脚本名称/行号信息.看看如果我创建自己的实现,我得到无用的跟踪信息,我是否应该找到代码区域...(它们都链接到日志实现,而不是导致日志消息的实际脚本)

在此输入图像描述

基本上,我的应用程序是一个非常可插拔的基础架构,任何日志输出都可能出现在任意数量的帧中.因此,我希望每条日志消息都在日志​​消息的开头包含一个特殊的唯一标识符.

我试过用自己的方法替换console.log方法,但是chrome抱怨 Uncaught TypeError: Illegal invocation

这就是我覆盖它的方式

var orig = console.log;
console.log = function( message )
{
    orig( (window == top ? '[root]' : '[' + window.name + ']') + ': ' + message );
}
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

[编辑]注意:修复"非法调用"问题后,覆盖文件中的文件名/编号仍然被"污染"...

[编辑]看起来一般的答案是 - 不 - 尽管有一些令人困惑的鹅追逐,但在当前版本的浏览器中无法实现所需的功能.

javascript google-chrome

49
推荐指数
5
解决办法
2万
查看次数

如何捕获整个浏览器窗口的模糊和焦点?

我想捕捉实际浏览器窗口的模糊和焦点 - 这意味着将焦点更改为子帧不感兴趣.

目前我一直在使用 $(top).focus() $(top).blur()

$(window).focus() $(window).blur()

但是,当用户将焦点更改为嵌入式iframe时,这些会触发,这是我不想要的.

有谁知道捕获TRUE激活和停用窗口的方法?

[编辑]

当用户从网页移动到嵌入式iframe的网页时,模糊和聚焦事件将触发.这与"窗口激活"事件不同,"事件激活"事件仅在实际的BROWSER窗口(或选项卡)被带到前面或被发送(即,更改或最小化)时触发.

我对模糊不感兴趣,因为用户导航到嵌入式框架的事实对程序没有影响.但是,如果用户最小化窗口,更改选项卡或切换到另一个程序,我想知道它...

javascript jquery

16
推荐指数
1
解决办法
7018
查看次数

为什么WinRT框架程序集与其(不同的)非WinRT对应程序具有相同的完全限定名称?

这实际上只是一个好奇心问题.我处理查看程序集和原始IL的类型.Windows 8确实在我正在实现的东西中扭曲.我发现WinRT和非WinRT框架程序集共享相同的完全限定名称.

因此,不可能客观地判断程序集是否依赖于框架程序集的WinRT或非WinRT版本(是的,可以同时使用它们).这些组件在布局和实现的类型方面有很大的不同.

为什么他们在构建WinRT程序集时不更改公钥令牌或版本号?

.net assemblies windows-8 windows-runtime .net-4.5

13
推荐指数
1
解决办法
493
查看次数

Xamarin iOS上的日志框架

登录的状态是什么Xamarin.iOS(使用Xamarin Studio Indie).

我尝试过使用NLog,但它引用了System.ServiceModel- 所以Xamarin抱怨我需要商业版(不需要支付那么多才能使用NLog!)

log4net也不起作用,因为它引用了System.Configuration不存在的类Xamarin/MonoTouch.

我发现没有一种可用的日志记录解决方案,无论是使用XS还是主要的日志记录播放器,我都感到惊讶.

缺少什么?

.net logging xamarin.ios ios xamarin

13
推荐指数
2
解决办法
9932
查看次数

可变长度参数的Javascript约定

我正在进行更多的javascript开发,并希望确保我遵循流行的约定.目前我有一个库,它包含可以通过1个模型进行操作的函数,或者许多模型.

鉴于一些javascript库非常受欢迎的气候,我很好奇; 我是通过枚举参数变量,还是允许其中一个参数成为数组来实现我的'单项或列表'要求,从而符合'事实标准'?

场景1:参数枚举

// passing a single entity to my function
sendMail( email, recipient1 );

// passing multiple entities to my function
sendMail( email, recipient1, recipient2 );
Run Code Online (Sandbox Code Playgroud)

场景2:实体参数是单个实例或数组

// pass a single entity
sendMail( email, recipient1 );

// passing multiple entities
sendMail( email, [recipient1, recipient2] );
Run Code Online (Sandbox Code Playgroud)

我已经看到了使用"场景2"的jQuery领域,但我还是想问一下 - 哪种方法最受欢迎,为什么?

谢谢

[编辑]

一些注释遵循相同的方式,使用一个参数对象 - 类似于'场景2' - 但我觉得它引入了不必要的复杂性 - 元素不需要命名,因为它们只是一个可变长度列表.我想我会在这里添加,以防我的问题不够明确.

[编辑]

我通过jQuery-1-7.js看到这样的代码

queue: function( elem, type, data ) {
    var q;
    if ( elem ) {
        type = ( type || …
Run Code Online (Sandbox Code Playgroud)

javascript coding-style

9
推荐指数
1
解决办法
5195
查看次数

Newtonsoft json序列化程序返回空对象

好的 - 我几个小时以来一直在反对这个问题.是时候寻求帮助了.

我刚刚将我的Web应用程序项目升级到ASP.NET MVC 4 RC和新的WebApi.我的web api方法现在返回EMPTY json"{}" - 即使我的对象已完全填充.

我已经用我自己的MediaTypeFormatter替换了串行器,它也调用了Newtonsoft Json序列化器,这样我就可以挂钩并查看工作情况.我看到的是一个对象进入序列化器,并以"{}"形式出现.

这个USED在我升级之前工作.

这是我的目标

[Serializable]
public class Parameters
{
    public string ApplicantName { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我只是打电话给:

var result = JsonConvert.SerializeObject(new Parameters(){ Name = "test" });
Run Code Online (Sandbox Code Playgroud)

我回来了

"{}"
Run Code Online (Sandbox Code Playgroud)

这是怎么回事??

[编辑]

其他人有同样的问题...在运行Newtonsoft源代码后,我可以看到我们在最近的更改中遇到了完全相同的问题.

http://json.codeplex.com/discussions/357850

json json.net

9
推荐指数
1
解决办法
1万
查看次数

本地主机上是否需要 SSL?

我们有一个使用自签名证书的 Web 应用程序,在服务器上安装它后,浏览器将打开“ https://localhost ”(不,为了论证,我会声明我们不能使用实际的机器名称)。这将生成浏览器错误,因为“localhost”不是证书的域。

一种选择是在环回 (localhost) 上公开 HTTP上的应用程序。

我们的应用程序应该在它从服务器外部传递时加密,所以 - 问题..

允许 HTTP 访问我们在本地主机上的应用程序(并且仅在本地主机上)是否存在任何安全问题?这是否会将应用程序暴露给来自计算机外部的窥探?

可以假设,如果有人能够访问机器的本地用户会话,那么我们有更大的担忧,因此缺少 HTTP 将无关紧要。

security iis https networking

8
推荐指数
1
解决办法
1948
查看次数

如何查询工作流实例的执行状态

我创建了一个工作流程,我通过WorkflowInstance.Run()运行它.这个工作流程有很多书签,我希望能够查询哪个书签负责当前的空闲状态.

我怎么能这样做?

谢谢

c# workflow workflow-foundation workflow-foundation-4

7
推荐指数
1
解决办法
2015
查看次数

如何使用.net库生成强命名SNK密钥文件

我的产品需要能够生成.snk文件(不需要在系统上安装Microsoft SDK).我可以生成一个工作的SNK文件,但是在指定密码时我似乎无法使其工作.谁能给我一些指示?这是我到目前为止:

    internal static void CreateKeyPairFile(string fileName, int keySize, string password)
    {
        if ((keySize % 8) != 0)
        {
            throw new CryptographicException("Invalid key size. Valid size is 384 to 16384 mod 8.  Default 1024.");
        }

        CspParameters parms = new CspParameters();
        parms.KeyNumber = 2;
        if (null != password)
        {
            var passwordString = new System.Security.SecureString();

            foreach (char c in password)
            {
                passwordString.AppendChar(c);
            }
            parms.Flags = CspProviderFlags.UseUserProtectedKey;
            parms.KeyPassword = passwordString;
        }
        RSACryptoServiceProvider provider = new RSACryptoServiceProvider(keySize, parms);

        byte[] array = provider.ExportCspBlob(!provider.PublicOnly);

        using (FileStream …
Run Code Online (Sandbox Code Playgroud)

c# strongname cryptography snk

7
推荐指数
1
解决办法
5321
查看次数

为什么TeamCity构建代理标记为"不兼容"?

我在Mac OSX 10.8上运行TeamCity 8 Server和Build Agent(随WebStart一起安装)

我唯一的构建代理与其原因不符

Implicit requirements: 
AppBuildType defined in Build step: Command Line
Run Code Online (Sandbox Code Playgroud)

但是,我的构建代理列出:

.NET Process Runner: Runner to run .NET processes under specified runtime, framework     version and with/without code coverage
Ant: Runner for Ant build.xml files
Command Line: Simple command execution
Duplicates finder (Java): Runner for gathering IntelliJ IDEA duplicates results
Gradle: Runner for Gradle projects
Inspections (IntelliJ IDEA): Runner for gathering IntelliJ IDEA inspection results
IntelliJ IDEA Project: Runner for IntelliJ IDEA projects
Ipr (obsolete …
Run Code Online (Sandbox Code Playgroud)

macos teamcity

7
推荐指数
1
解决办法
8691
查看次数