问题列表 - 第8791页

使用Google Analytics跟踪广告系列而不使用查询字符串参

Google Analytics中是否支持跟踪广告系列而无需使用查询字符串参数.

在分析你可以标记一个链接到你的网站查询字符串参数,如utm_campaignutm_medium其携带的运动信息,以便他们可以跟踪.

谷歌实际上有一个在线工具来帮助创建这样的链接.

例如,如果StackOverflow在Experts Exchange上做广告,他们可能会有这样的链接:

http://www.stackoverflow.com/?utm_source=expertexchange&utm_medium=banner&utm_campaign=a-better-expert-exchange

出于多种原因,我不希望这些笨拙的参数出现在我的URL中:

  • 我想鼓励叽叽喳喳,长链接不鼓励这样做
  • 我不希望人们使用广告系列ID为他们添加书签
  • 我希望人们看到一个干净的URL
  • 我不希望搜索引擎索引这些链接.
  • 我希望完全控制将哪些参数发送到Google Analytics(分析) - 而不是让我的合作伙伴弄清楚他们访问我网站的网址

我前一段时间试图找到一种可以设置这些参数的方法.谷歌有一个乍一看似乎是解决方案的页面,但实际上并非如此.该页面描述了如何将查询字符串参数的名称更改为其他内容 - 例如,使用src而不是utm_source运行:

 pageTracker._setCampSourceKey("src");     
Run Code Online (Sandbox Code Playgroud)

我真的无法弄清楚为什么它们不容易实际显式设置utm_source键的值- 而不仅仅是为它设置一个替代参数名称.

我记得有一段时间后找到了一个讨厌的黑客,但我现在似乎无法找到.我似乎记得,无论是谁,它都会使用分析代码的副本,并且基本上将其分解并攻击它.这对我来说不是一个好的解决方案!

是否有一种官方支持的方式来做这件事,没有某种令人讨厌的重定向.

简而言之,我想做这样的事情(ASP.NET MVC网站).使用以下网址为partnet提供指向我网站的链接:

 http://www.example.com/?cid=2dae88a8-66b1-475d-8a35-2978bd1a158c
Run Code Online (Sandbox Code Playgroud)

在我的MVC页面的控制器中,我将找出此GUID与哪个广告系列相关,并设置模型状态.注意:这给了我的优势,我可以更改广告系列参数,而无需重新发布网址.

在页面本身,我会这样做:

var campaignMedium = <%= ViewData.Model.CampaignMedium %>;
var campaignSource = <%= ViewData.Model.CampaignSource %>;
var campaignName = <%= ViewData.Model.CampaignName %>;

pageTracker._setCampaignData({
    utm_source: campaignSource,
    utm_medium: campaignMedium,
    utm_campaignName: campaignName
});
pageTracker._trackPageview();
Run Code Online (Sandbox Code Playgroud)

重要说明:此_setCampaignData方法实际上不存在.这只是我想要做的事情的"伪代码".

有没有人成功地做过这样的事情?

javascript google-analytics

43
推荐指数
6
解决办法
2万
查看次数

带有许多目标目录的 GNU make

我必须在现有的 .html 文件中集成许多 HTML 文件的生成Makefile。问题是 HTML 文件需要驻留在许多不同的目录中。我的想法是写一个隐式规则,将源文件(*.st)转换成对应的html文件

%.html: %.st
    $(HPC) -o $@ $<
Run Code Online (Sandbox Code Playgroud)

以及依赖于所有 html 文件的规则

all: $(html)
Run Code Online (Sandbox Code Playgroud)

如果 HTML 文件不在 builddir 中,则make找不到隐式规则:*** No rule to make target. 如果我像这样更改隐式规则

$(rootdir)/build/doc/2009/06/01/%.html: %.st  
    $(HPC) -o $@ $<
Run Code Online (Sandbox Code Playgroud)

它找到了,但是我必须对项目中的几乎每个文件都有一个隐式规则。根据GNU手册中的隐式规则搜索算法make,规则搜索的工作方式如下:

  1. 将整个目标名称t拆分为目录部分,称为d,其余部分称为n。例如,如果tsrc/foo.o,则dsrc/,而nfoo.o
  2. 列出其中一个目标与tn匹配的所有模式规则。如果目标模式包含斜杠,则与t匹配;否则,针对n

为什么没有找到隐式规则,假设使用 GNU,最优雅的解决方案make是什么?

这是我的精简版Makefile: …

makefile gnu-make release-management build-management

4
推荐指数
1
解决办法
3764
查看次数

帮助查看以下代码,它是否安全?

private static Callback callback;

public Foo()
{
    super(getCallback());
}

private static Callback getCallback()
{
    callback = new Callback();
    return callback;
}
Run Code Online (Sandbox Code Playgroud)

可以从多个线程调用构造函数Foo().我关注的是私有静态字段'callback'和静态方法'getCallback()'.

可以看出,每次调用'getCallback()'时,它都会为静态字段'callback'分配一个新值.

我的猜测是它不是线程安全的,因为关键字static总是附加到类而不是实例,这意味着,Foo的静态字段'回调'可能被构造另一个Foo()的其他线程覆盖.它是否正确?

如果我错了,请纠正我.谢谢!

编辑:我的目的是在课堂的某个地方保留'回调',以便我以后可以重复使用它.但这并不容易,因为Foo从一个具有构造函数强制'回调'的类扩展而来.

java multithreading static-methods

3
推荐指数
2
解决办法
596
查看次数

如何在不更改注释的情况下禁用Hibernate中某些特定实体的二级缓存

我在我的应用程序中使用Hibernate二级缓存,由于某些商业原因我不能再更改实体注释.

在我的项目中,除了从Hibernate更改数据库之外,还存在其他未通过Hibernate的本机SQL.因此,从本机SQL更新数据库后,Hibernate二级缓存数据可能会过时.这就是为什么我想为某些实体禁用二级缓存(以编程方式或以其他方式更改注释).

提前致谢!

java annotations hibernate second-level-cache

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

使用ADSI设置"作为服务登录"和"允许本地登录"

我正在尝试创建一个powershell脚本来自动创建用户,这使用ADSI工作得很好.但是,我需要设置以下属性,我不知道如何(或ADSI甚至可以这样做):

  • 以服务身份登录
  • 允许本地登录

任何想法如何做到这一点?

powershell adsi

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

用Python写入UTF-8文件

我真的很困惑codecs.open function.当我做:

file = codecs.open("temp", "w", "utf-8")
file.write(codecs.BOM_UTF8)
file.close()
Run Code Online (Sandbox Code Playgroud)

它给了我错误

UnicodeDecodeError:'ascii'编解码器无法解码位置0的字节0xef:序号不在范围内(128)

如果我做:

file = open("temp", "w")
file.write(codecs.BOM_UTF8)
file.close()
Run Code Online (Sandbox Code Playgroud)

它工作正常.

问题是为什么第一种方法失败了?我该如何插入bom?

如果第二种方法是正确的做法,那么使用点是codecs.open(filename, "w", "utf-8")什么?

python byte-order-mark utf-8

184
推荐指数
5
解决办法
29万
查看次数

'Bad Data'使用DES3解密消息时

C#2008

我使用以下代码来加密和加密邮件.但是,当我尝试解密时,我收到"错误数据"错误.

我的代码下面有什么问题吗?

非常感谢,

public string encryptText(string text)
    {
        try
        {
            TripleDESCryptoServiceProvider encrypt = new TripleDESCryptoServiceProvider();

            encrypt.Key = new byte[] { 0, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 144, 89, 55, 34, 21, 13, 8, 5, 3, 2, 1, 0 };
            encrypt.IV = new byte[] { 1, 2, 3, 5, 8, 13, 21, 34 };
            byte[] byteText = Encoding.Unicode.GetBytes(text);

            ICryptoTransform encryptor = encrypt.CreateEncryptor();

            byte[] encryptedText = encryptor.TransformFinalBlock(byteText, 0, byteText.Length);

            return Encoding.Unicode.GetString(encryptedText);
        }
        catch (Exception ex) …
Run Code Online (Sandbox Code Playgroud)

c# encryption

0
推荐指数
1
解决办法
3578
查看次数

如何做内部svn:externals

我正在尝试使用svn:externals在我们的subversion存储库中建立一种符号链接,但它并没有真正起作用.我想要做的是将同一个存储库的一个部分中的文件夹链接到另一个,如下所示:

src/somewhere_else/schema https://svn.acme.com/svn/project/trunk/src/schema

这适用于真正的外部资源(即不同仓库中的目录),但我不能让它在上面的同一个repo中的资源上工作.我用谷歌搜索了一段时间,看起来这应该得到支持,我错过了什么?

我们在Windows 2003服务器安装上使用VisualSVN下的Subversion 1.5.5.


编辑:

我忘了提到我没有收到任何错误,应该从其他文件夹获取内容的文件夹只保持空白.

svn symlink svn-externals

11
推荐指数
2
解决办法
5305
查看次数

在ASDoc中修复损坏的路径?

这个问题涉及使用ASDoc从AS3创建文档.我不是从Flex或其他任何东西,只是使用命令行,虽然一切正常,ASDoc没有返回任何错误,结果文档中的一些链接被破坏.

具体而言,在文档的其他部分(包括在同一类中)中存在属性或方法链接的所有位置,链接最终会使与包对应的文件夹加倍.

例如,说我正在记录myPackage.MyClass.如果MyClass有一个名为的属性MyProperty,并且在我的文档的某个地方,我包含这样一行:

@see #MyProperty
Run Code Online (Sandbox Code Playgroud)

然后正确解析文档并正确创建"See also:"链接,但它最终指向

.../output_directory/myPackage/myPackage/MyClass.html#MyProperty
Run Code Online (Sandbox Code Playgroud)

当然,在实际的文件系统中只有一个myPackage文件夹.

我的ASDoc命令的相关部分如下所示:

asdoc
 -source-path .
 -doc-sources myPackage
 -output D:\dev\repository\docs\myPackage_docs
 -external-library-path "C:\Progra~1\Adobe\flex_sdk_3\frameworks\libs\player\10\playerglobal.swc"
Run Code Online (Sandbox Code Playgroud)

我是否可能缺少一些ASDoc参数,它会指定链接的基本URL,或者沿着这些行的某些内容?如果这是一个普通的错误,对许多人来说很明显,但我找不到任何谷歌搜索结果的问题,所以我的工作假设是,从Flex运行ASDoc的人不会发生这种情况,也许是因为某些设置我已经省略了.

谢谢你的帮助!


根据TypeOneError的建议,我尝试了不同类型的@see链接.我发现这些工作正常:

  • @see some.package
  • @see ClassName
  • @see ClassName#property

虽然这些不起作用:

  • @see #property
  • @see full.package.ClassName
  • @see full.package.ClassName#property

更糟糕的是,尽管所有导航链接都有效,但在自动生成的类型链接中会出现相同的加倍路径.例如,在显示每个方法的签名的情况下,当方法返回文档中的类时,该链接将被破坏.

我还看了一下HTML,发现问题似乎与页面的基本URL或其他任何东西没有关系,它只是不一致的链接.因此,在一行连续@see链接中,其中ClassName.html一些链接package/ClassName.html通过上面显示的规则链接到一些链接.顺便说一下,无论页面是否以框架形式查看,所有这些都是正确的.

更多信息,如果我搞清楚,但欢迎解决方法的想法.


更新:更多细节:我不确定我的确切SDK版本,除了它伴随Flex 3,但如果我运行没有参数的ASDoc,它会报告:Adobe ASDoc Version 3.3.0 build 4852.我在Windows XP上运行这一切,来自放置在类路径目录中的批处理文件.


部分解决方案:通过升级到Flex 4 SDK的4.0.0.7219测试版(并使用其中分发的ASDoc)解决了我的一个问题.现在,我的所有@see标签都按预期工作.唯一剩下的问题是,无论我有什么方法返回一个属于我的文档的类,ASDoc只会破坏链接.例如,如果我有一个签名的方法ClassA#getB():ClassB,那么在文档中显示的位置,文本"ClassB"链接到"packageName:ClassB.html"而不是"packageName/ClassB.html".这似乎是一个简单的错误.的Bleh.

asdoc actionscript-3

6
推荐指数
1
解决办法
976
查看次数

如何检查路径中是否存在程序

我正在用scala写一个程序,它调用:

Runtime.getRuntime().exec( "svn ..." )
Run Code Online (Sandbox Code Playgroud)

我想检查命令行中是否有"svn"可用(即可以在PATH中访问).我怎样才能做到这一点 ?

PS:我的程序设计用于在Windows上运行

java scala runtime

15
推荐指数
2
解决办法
5814
查看次数