我正在尝试使用业力来配置自动测试.我的文件结构如下
/assests
/css
/font
/img
/js
/collection
/lib
/model
/plugin
/spec
/view
test-main.js
main.js
/templates
index.html
karma.conf.js
Run Code Online (Sandbox Code Playgroud)
karma.conf.js:
module.exports = function(config) {
config.set({
// base path that will be used to resolve all patterns (eg. files, exclude)
basePath: '',
// frameworks to use
// available frameworks: https://npmjs.org/browse/keyword/karma-adapter
frameworks: ['jasmine', 'requirejs'],
// list of files / patterns to load in the browser
files: [
'js/test-main.js',
{pattern: 'js/*.js', included: false},
{pattern: 'js/collection/*.js', included: false},
{pattern: 'js/lib/**/*.js', included: false},
{pattern: 'js/lib/**/**/*.js', included: false}, …
Run Code Online (Sandbox Code Playgroud) 我正在尝试通过他们的Google帐户安全地登录用户.我正处于使用此 cordova插件检索userID和oAuthToken的阶段.
现在,我需要将这些凭据发送到我的服务器,然后在服务器端验证令牌的完整性.基本上我正在尝试执行这部分过程.
我很困惑,我应该尝试使用Google客户端API验证哪个令牌.我应该使用userID还是oAuthToken?
文档提到验证用户ID,但我发现这很奇怪.这不意味着,如果有人获得我的用户ID,他们可以基本上闯入我的服务器?用户ID永远不会改变(如果我在这里错了,请纠正我)所以对此进行验证似乎不安全.验证设置为过期的oAuthToken是不是更有意义?或者用户ID是否也会过期?
任何的建议都受欢迎.
谢谢,
菲
编辑:
对任何感兴趣的人 由于不完全理解google api可以返回的三个令牌,我产生了混乱:userId,oAuthToken和idToken.简而言之:返回userId,其中大多数api调用标识用户.这似乎是不变的.当我访问谷歌api作为Android客户端时,我的案例中的oAuthToken被返回.访问api作为Web客户端时返回tokenId.因此,那些希望使用移动检索令牌进行服务器端验证的人应该将api作为Web客户端访问.然后,返回的令牌可以使用类似于下面接受的答案的代码在服务器端验证.
在我的系统中,我要求节点上的边数必须存储为顶点的内部属性以及特定传出边上的顶点中心索引.这自然要求我在所有数据加载完毕后计算节点上的边数.我这样做如下:
long edgeCount = graph.getGraph().traversal().V(vertexId).bothE().count().next();
Run Code Online (Sandbox Code Playgroud)
但是,当我将测试扩展到某些节点是"超级"节点时,我在上面的行中得到以下异常:
Caused by: com.netflix.astyanax.connectionpool.exceptions.TransportException: TransportException: [host=127.0.0.1(127.0.0.1):9160, latency=4792(4792), attempts=1]org.apache.thrift.transport.TTransportException: Frame size (70936735) larger than max length (62914560)!
at com.netflix.astyanax.thrift.ThriftConverter.ToConnectionPoolException(ThriftConverter.java:197) ~[astyanax-thrift-3.8.0.jar!/:3.8.0]
at com.netflix.astyanax.thrift.AbstractOperationImpl.execute(AbstractOperationImpl.java:65) ~[astyanax-thrift-3.8.0.jar!/:3.8.0]
at com.netflix.astyanax.thrift.AbstractOperationImpl.execute(AbstractOperationImpl.java:28) ~[astyanax-thrift-3.8.0.jar!/:3.8.0]
at com.netflix.astyanax.thrift.ThriftSyncConnectionFactoryImpl$ThriftConnection.execute(ThriftSyncConnectionFactoryImpl.java:153) ~[astyanax-thrift-3.8.0.jar!/:3.8.0]
at com.netflix.astyanax.connectionpool.impl.AbstractExecuteWithFailoverImpl.tryOperation(AbstractExecuteWithFailoverImpl.java:119) ~[astyanax-core-3.8.0.jar!/:3.8.0]
at com.netflix.astyanax.connectionpool.impl.AbstractHostPartitionConnectionPool.executeWithFailover(AbstractHostPartitionConnectionPool.java:352) ~[astyanax-core-3.8.0.jar!/:3.8.0]
at com.netflix.astyanax.thrift.ThriftColumnFamilyQueryImpl$4.execute(ThriftColumnFamilyQueryImpl.java:538) ~[astyanax-thrift-3.8.0.jar!/:3.8.0]
at com.thinkaurelius.titan.diskstorage.cassandra.astyanax.AstyanaxKeyColumnValueStore.getNamesSlice(AstyanaxKeyColumnValueStore.java:112) ~[titan-cassandra-1.0.0.jar!/:na]
Run Code Online (Sandbox Code Playgroud)
解决这个问题的最佳方法是什么?我应该简单地增加帧大小还是有更好的方法来计算节点上的边数?
我最近安装并尝试使用Grakn.ai进行可视化.按照grakn.ai网站上的说明,我在尝试运行时遇到了以下问题:
\grakn-dist-0.15.0>.\bin\grakn.sh start
在Windows 10命令提示符下,64位,退出前显示以下行:
Starting redis
Cassandra already running
Starting engine.Error: Could not find or load main class
ai.grakn.engine.GraknEngineServer
Error: Could not find or load main class ai.grakn.client.Client
.Error: Could not find or load main class ai.grakn.client.Client
.Error: Could not find or load main class ai.grakn.client.Client
Run Code Online (Sandbox Code Playgroud)
我也试图添加JAVA_HOME
到系统变量中,但这无济于事.(我注意到JAVA_HOME
当我最初寻找它时不存在,所以我不得不手动创建变量并设置jdk路径 - 这可能意味着一些问题)
非常感谢您的时间,我非常感谢您的帮助.
如何编写查询在我的图表上运行,如果没有路径只穿过每个边缘一次并返回起始点,则输出'false'.
我找不到 GRAKN/GRAQL 语言的任何语法突出显示插件。
有人知道我在哪里可以找到它们吗?
提前致谢。
有没有办法T.label
在创建顶点后设置.我尝试过以下方法:
Vertex v = graph.addVertex();
v.property(T.label.name(), "test");
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试以下遍历时:
graph.traversal().V().hasLabel("test").next
Run Code Online (Sandbox Code Playgroud)
我明白了
org.apache.tinkerpop.gremlin.process.traversal.util.FastNoSuchElementException
Run Code Online (Sandbox Code Playgroud)
有没有什么特别的东西T.label
限制它在构造顶点的步骤中被设置?
我的场景是在单个查询中在顶点之间添加多个边:
假设以下节点:这些是我拥有的标签和ID
用户数:
4100
歌曲:
4200
4355
4676
我必须在这些顶点之间建立边缘
4100 --> 4200,
4100 --> 4355,
4100 --> 4676.
Run Code Online (Sandbox Code Playgroud)
通常可以通过在node之间创建单个边来完成此操作。如果我们想一次在50个以上的顶点之间创建边,则这不是一种有效的方法。我正在使用Tinkerpop 3.0.1
。
tinkerpop ×3
gremlin ×2
java ×2
tinkerpop3 ×2
android ×1
graphic ×1
javascript ×1
karma-runner ×1
oauth ×1
ontology ×1
plugins ×1
requirejs ×1
syntax ×1
titan ×1