问题列表 - 第33210页

CouchDb使用列表读取身份验证

我正在考虑在CouchDB中移植一个网站,它看起来很有趣.

但是,一个很大的问题是CouchDB似乎不支持读取身份验证; 所有读者都可以访问数据库中的所有文档.

其他地方建议为不同的读者组使用不同的数据库或在另一个(中间)层实现读者身份验证,这两个都不是这个项目的选项,其中访问由复杂的每个文档ACL确定.

我正在考虑在列表中实现身份验证,并将对CouchDb的所有访问限制为这些列表.这种限制可以通过Apache中用作反向代理的简单mod_rewrite子句来强制执行.列表将简单地获取行并检查userCtx对文档的ACL.就像是:

function(head, req) {
  var row;
  while (row = getRow()) {
     if (row.value.ACL[req.userCtx.name])
       send(row.value);
     else
       throw({unauthorized : "You are not allowed to access this resource"});
}
Run Code Online (Sandbox Code Playgroud)

由于我没有使用CouchDB的经验,而且我没有在任何地方阅读过这种方法,我想知道这种方法是否可行.

这是实现读取访问的方式还是我为了错误的目的而滥用列表?我不应该期望使用CouchDB可以实现这么简单的解决方案吗?

authentication couchdb

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

PHP回调可以通过引用接受其参数吗?

我已经测试了以下内容,它适用于PHP 5.2和5.3,但是,就我所见,它没有在任何地方记录,所以我正在评估它的用途.

我在一个名为isValid的类中有一个函数,它检查散列以查看给定值是否在允许值集合中.有些值有效的,但已弃用; 我想我的isValid函数将传入的值更新为当前值并返回true.

当我自己调用它时,这很好,但是,当我用作array_filter的回调时,我也想使用这个方法.

这是一个测试用例,按预期产生一个值为2,3,4,5,6的数组.

<?php
$test = array(1, 2, 3, 4, 5);
echo print_r(array_filter($test, 'maptest'), true);

function maptest(&$value)
{
$value ++;
return true;
}
Run Code Online (Sandbox Code Playgroud)

所以StackOverflow:这是允许的,还是未记录的功能可能会在将来消失/停止工作/导致错误?

php arrays reference callback array-filter

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

MSBuild无法扩展环境变量

我是很新的MSBuild的,所以我可能会做一些很明显,错了,但谁与工作的MSBuild我的同事有很多看不到任何错误,所以我想我会在这里发布,看看是否有人能看见.

我转换,我们习惯叫老批处理文件ant来MSBuild任务(因为我们想从MSBuild的称呼它)和环境变量总是扩展到)了原因,我们不明白.

我有一个包含的房产组

<PropertyGroup>
  <EnvJavaHome>
    $([System.Environment]::GetEnvironmentVariable("JAVA_HOME"))
  </EnvJavaHome>
  <!-- ... -->
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)

(为了易读性添加了换行符).现在的MSBuild属性函数参考建议我打电话System.Environment.GetEnvironmentVariable正确的,但我总是得到的值).但是,当我对值进行硬编码时,代码运行得非常好.

我错过了什么明显的事情?:O)

msbuild environment-variables

3
推荐指数
1
解决办法
1905
查看次数

拥有一个MiscUtilities课程是不好的形式?

我们公司保留一个MiscUtilities类,它只包含公共静态方法,这些方法通常执行不相关的任务,例如将日期从String转换为Calendar以及将ArrayLists写入文件.我们在其他类中引用它并发现它非常方便.但是,我见过那种公用事业类嘲笑TheDailyWTF.我只是想知道这类课程是否有任何实际的缺点,以及替代方案是什么.

oop

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

是否有内置联系人应用程序的自定义URL方案?

我正在尝试编写一个可以搜索我公司的应用程序.当它返回结果时,我想要包含一个功能,只需按一下按钮即可将此人添加到"联系人"应用程序中.

问题是,我找不到通过自定义URL方案启动联系人应用程序的方法,并将新人员信息作为参数.有没有人知道这是否可能,如果是的话,如何去做?

cocoa-touch url-scheme ios

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

memcached作为Rails中的Object存储

我在我的Rails应用程序中使用Memcached作为Object Store,我在其中存储了memcached中User对象的搜索结果

现在,当我获取数据时,我得到了Memcached Undefined Class/Module Error.我在这个博客中找到了解决这个问题的方法

http://www.philsergi.com/2007/06/rails-memcached-undefinded-classmodule.html

 before_filter :preload_models
  def preload_models
    Model1
    Model2
  end
Run Code Online (Sandbox Code Playgroud)

建议事先预装模型.我想知道是否有一个更优雅的解决方案来解决这个问题,并且使用预加载技术有任何缺点.

提前致谢

memcached ruby-on-rails models eager-loading

7
推荐指数
2
解决办法
2345
查看次数

无法删除 Jackrabbit 中的版本

我正在尝试从版本历史记录中删除一个版本,但出现 javax.jcr.ReferentialIntegrityException: Unable to remove version。至少引用过一次。

当我尝试删除对该版本的所有引用时,似乎没有任何引用并且仍然不允许我删除该版本。我确定这不是 root 版本,我也确定它不是 root 之后的第一个版本。

这是我的代码:

    Version ver = manager.checkin(parentNodePath);

    VersionHistory versionHistory = manager.getVersionHistory(parentNodePath);
    PropertyIterator versionReverences = ver.getReferences();
    for (Property verRef = versionReverences.nextProperty(); versionReverences.hasNext();) {
        verRef.remove();
    }
    session.save();
    versionHistory.removeVersion(ver.getName());
Run Code Online (Sandbox Code Playgroud)

非常感谢任何帮助,谢谢。

java jackrabbit jcr

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

使用InnoSetup备份文件并在卸载时恢复它们?

考虑以下:

  • 我有两个文件,例如XXX.txtYYY.txt

  • 我想将它们安装到一个文件夹(比方说files),其中已经有XXX.txtYYY.txt文件

  • 我想"备份"两个原始文件,将它们重命名为XXX.txt.backupYYY.txt.backup

  • 在卸载时,我想将两个文件恢复到其原始状态

如何通过Inno Setup实现这一目标?

inno-setup

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

转换二叉树 - > BST(保持原始树形状)

我有一个形状的二叉树.我想将它转换为相同形状的 BST搜索树.可能吗?

我试过像 - 的方法

  • 按顺序遍历二叉树并将内容放入数组中.然后将其映射到BST,记住条件(左val <= root <=右val).这适用于某些情况,但对其他情况不利.

PS:我看过这个 - 二叉树问题.检查相似的形状.但是,比较2个BST的形状相似性很容易.

algorithm tree binary-tree data-structures

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

是否值得升级到C#4.0

可能重复:
我为什么要升级到c#4.0?

我们的项目目前都是C#3.如果我们对C#4提供的功能没有特定要求,我们还有其他原因需要升级吗?谢谢.

编辑

使用新的CLR似乎更有优势,而不仅仅是新的语言功能.

c# c#-3.0 c#-4.0

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