当前位置: 首页 > 面试题库 >

如何使用电子邮件地址查询Appengine数据存储区

宋勇
2023-03-14
问题内容

我正在尝试使用他们的电子邮件地址在appengine数据存储区中查找用户。我正在使用Go。

此代码找不到任何用户。

var users []entity.User
q := datastore.NewQuery("users").Filter("AccountEmail =", "email@address.com")
_, err := q.GetAll(c, &users)

如果我更改查询以使用“ Id”属性查找用户,则可以正常工作。

var users []entity.User
q := datastore.NewQuery("users").Filter("Id", "185804764220139124118")
_, err := q.GetAll(c, &users)

我已经确认“ AccountEmail”的属性名称和值正确。“ AccountEmail”它也被索引。

为了使查询正常工作,是否需要使用电子邮件地址进行某些特殊格式设置?


问题答案:

为了通过电子邮件(AccountEmail)查找用户,必须满足以下所有条件。请检查并确保每个“测试”通过:

  • 具有属性名称的实体AccountEmail必须存在。不要忘记属性名称区分大小写。请注意,数据存储名称和struct字段名称可能不同,可以使用标签进行更改,例如

AccountEmail stringdatastore:”email”``

  • 该属性必须被索引。请注意,是否对属性建立索引可能会因实体而异,因此您可能有一个实体在其中建立了AccountEmail索引,而另一个实体未在其中建立AccountEmail索引。

  • AccountEmail必须具有类型string。我认为这是微不足道的。但是请注意,可以使用与该User类型不同的string类型来保存属性,例如,当您在数据存储查看器中列出实体时,电子邮件的显示方式就像是电子邮件字符串一样,但显然是不同。

  • 要使用查找用户AccountEmail="email@address.com",保存的值必须"email@address.com"准确。小写和大写字母不同!空格(和所有空格字符)很重要!请检查保存的值是否正是此值,例如在打印时将看不到尾随空格,但它们会导致不匹配!另外,某些unicode字符具有相同的视觉外观(它们看起来相同),但是它们的unicode代码点不相同,并且还会导致不匹配。



 类似资料:
  • 我对Firebase和Swift很陌生,在查询时遇到了一些麻烦。因此,基本上我想做两件事: 查询我的用户,只找到那些在他们的名称(或电子邮件地址)中包含特定字符串的用户,并将他们添加到数组中。 获取我的所有用户并将他们添加到数组中。 正如您所看到的,我正在使用Firebase的简单登录(稍后我也想添加Facebook登录),并且我正在按用户的uid存储我的用户。 我的规则文件的一部分如下所示: 所

  • 问题内容: 有没有一种使用正则表达式检查表单输入的好方法,以确保它是正确的样式电子邮件地址?自昨晚以来一直在搜索,如果它是子域的电子邮件地址,则回答了有关该主题的人们疑问的每个人似乎也有问题。 问题答案: 无关紧要。即使你可以验证该电子邮件地址在语法上是有效的,你仍然需要检查该电子邮件地址是否未键入错误,以及该地址是否确实属于你认为确实有用的人。唯一的方法是向他们发送电子邮件,并让他们单击链接进行

  • 问题内容: 我试图为用户建立确认电子邮件地址,以验证他们的电子邮件是真实的。我应该使用哪个软件包来确认用户的电子邮件地址。到目前为止,我使用猫鼬和快递 代码示例 在app.post代码中,如何确认用户的电子邮件地址? 问题答案: 您要找的是“帐户验证”或“电子邮件验证”。有很多Node模块可以执行此操作,但是原理如下: 您的用户模型应具有默认情况下的属性 当用户提交有效的注册表单时,创建一个新用户

  • 问题内容: 我碰到过此PHP代码,无需发送电子邮件即可使用SMTP检查电子邮件地址。 有没有人尝试过类似的方法或对您有用?您能告诉客户/用户输入的电子邮件是否正确并且存在吗? 问题答案: 有时 可以使用两种方法来确定收件人是否确实存在: 您可以连接到服务器,然后发出命令。很少有服务器支持此命令,但正是为此目的而设计的。如果服务器以2.0.0 DSN响应,则该用户存在。 您可以发出,然后查看邮件是否

  • 假设我在布局中有一个按钮和一个编辑文本。如何向android studio中的编辑文本地址发送包含一些消息的电子邮件?