Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何获得唯一的用户名_Java_Google App Engine_Google Cloud Datastore - Fatal编程技术网

Java 如何获得唯一的用户名

Java 如何获得唯一的用户名,java,google-app-engine,google-cloud-datastore,Java,Google App Engine,Google Cloud Datastore,我希望使用谷歌的应用程序引擎(Java)为我目前正在编写的Android消息应用程序提供后端,我刚开始使用GAP,但对Java有一点经验(通过Android) 当有人第一次使用该应用程序时,它将向服务器发送一些注册数据,这些数据将存储在GAE数据存储中,并向手机返回一个唯一的id(如果出现故障,则返回一条错误消息) 因为我看不到类似于key=datastore的东西。给定一个uniquekey或datastore。这是以前使用过的(key),我想我必须生成一个随机键,看看它是否被取下(老实说,我

我希望使用谷歌的应用程序引擎(Java)为我目前正在编写的Android消息应用程序提供后端,我刚开始使用GAP,但对Java有一点经验(通过Android)

当有人第一次使用该应用程序时,它将向服务器发送一些注册数据,这些数据将存储在GAE数据存储中,并向手机返回一个唯一的id(如果出现故障,则返回一条错误消息)

因为我看不到类似于
key=datastore的东西。给定一个uniquekey
datastore。这是以前使用过的(key)
,我想我必须生成一个随机键,看看它是否被取下(老实说,我不知道该怎么做)

有什么想法(具体问题的答案,或者指向有用的“入门”资源)


谢谢

如果该值对安全性不敏感(即,它只是一个用户ID,您可以使用其他方法对手机进行身份验证),只需插入并获取新插入实体的密钥即可。如果插入新实体而不提供实体,则数据存储将自动关闭。或者,您可以使用显式请求ID

如果该值是安全敏感的(它是会话nonce或用于身份验证的内容),则使用该类生成随机字节序列。不要将其用作实体(如用户对象)的键;如果用户的会话被破坏,这将阻止更改会话ID。为此目的使用单独的用户ID,并仅在身份验证步骤中使用此安全nonce

注意,简单地循环创建ID、测试冲突和插入是不安全的;使用AppEngine内置的ID分配系统更容易(更快、更便宜…)