热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何在Stormpath中按ID和customData搜索用户

如何解决《如何在Stormpath中按ID和customData搜索用户》经验,为你挑选了1个好方法。

我正在考虑使用Stormpath将它的Java API作为用户存储.

看起来不错,除了我无法搜索用户.

例如,我收到此错误:

Exception in thread "main" com.stormpath.sdk.resource.ResourceException: HTTP 400, Stormpath 2105 (http://docs.stormpath.com/errors/2105): Account ID is not a supported query property.

当我执行此查询时:

HashMap queryParams = Maps.newHashMap();
queryParams.put("ID", "4mPXXXXXXXXXX");
searchResult = application.getAccounts(queryParams);

然而,通过电子邮件搜索用户是有效的.当我尝试通过存储在customData属性中的登录令牌搜索用户时,我收到相同的错误.

看起来我想做的事情是不可能的,因为看起来你可以查询的唯一属性是电子邮件和用户名.但是,如果它不起作用,他们为什么会提供此功能.我错过了什么?



1> Les Hazlewoo..:

常见的关系数据库行为与REST API中的行为之间存在阻抗不匹配.通过id查询虽然在关系数据库中很常见,但它并不是REST API(或大多数基于HTTP的网站)的惯用行为.URL(href)是指向Web上资源的规范"指针".换句话说,在REST API中,规范标识符 href.href中的任何标记(任何内部"id",特殊字符,等等)对REST客户端应该是不透明的,并且完全被客户端忽略.URL在HTTP和REST中是最重要的.

在这种情况下,Stormpath SDK会尝试忠实于RESTful最佳实践,因此您可以使用该client.getResource方法获取任何Stormpath资源,该方法接受href以及您希望href表示的对象类型:

String href = "https://api.stormpath.com/v1/accounts/" + id;
Account account = client.getResource(href, Account.class);

也就是说,希望在客户端API中更方便地表示它是没有错的,例如,client.getAccount(String id)如果你想保留ID的概念.如果是这样,请打开一个新的功能请求,我们将非常乐意考虑它.

至于可查询Account属性,这里记录了这些属性.Stormpath也将很快使自定义数据中的数据也可搜索.虽然Stormpath功能时间表从未公布,但它是公司最高的工程优先级,应该很快就会推出.

对某些人有用的一种解决方法是将他们想要搜索的数据存储在您未在应用程序中使用的帐户字段中.例如,您可以使用"中间名称"字段来存储喜欢的颜色.在自定义数据搜索可用之前,这只是暂时的.HTH!


推荐阅读
  • IOS Run loop详解
    为什么80%的码农都做不了架构师?转自http:blog.csdn.netztp800201articledetails9240913感谢作者分享Objecti ... [详细]
  • 使用HTML和JavaScript实现视频截图功能
    本文介绍了如何利用HTML和JavaScript实现从远程MP4、本地摄像头及本地上传的MP4文件中截取视频帧,并展示了具体的实现步骤和示例代码。 ... [详细]
  • java解析json转Map前段时间在做json报文处理的时候,写了一个针对不同格式json转map的处理工具方法,总结记录如下:1、单节点单层级、单节点多层级json转mapim ... [详细]
  • 可参照github代码:https:github.comrabbitmqrabbitmq-tutorialsblobmasterjavaEmitLogTopic.ja ... [详细]
  • 使用Tkinter构建51Ape无损音乐爬虫UI
    本文介绍了如何使用Python的内置模块Tkinter来构建一个简单的用户界面,用于爬取51Ape网站上的无损音乐百度云链接。虽然Tkinter入门相对简单,但在实际开发过程中由于文档不足可能会带来一些不便。 ... [详细]
  • Java 中的等时日期(int,int)方法,示例 ... [详细]
  • 2020年9月15日,Oracle正式发布了最新的JDK 15版本。本次更新带来了许多新特性,包括隐藏类、EdDSA签名算法、模式匹配、记录类、封闭类和文本块等。 ... [详细]
  • 包含phppdoerrorcode的词条 ... [详细]
  • JUC(三):深入解析AQS
    本文详细介绍了Java并发工具包中的核心类AQS(AbstractQueuedSynchronizer),包括其基本概念、数据结构、源码分析及核心方法的实现。 ... [详细]
  • 本文整理了一份基础的嵌入式Linux工程师笔试题,涵盖填空题、编程题和简答题,旨在帮助考生更好地准备考试。 ... [详细]
  • 本文将介绍如何在混合开发(Hybrid)应用中实现Native与HTML5的交互,包括基本概念、学习目标以及具体的实现步骤。 ... [详细]
  • Spring Data JdbcTemplate 入门指南
    本文将介绍如何使用 Spring JdbcTemplate 进行数据库操作,包括查询和插入数据。我们将通过一个学生表的示例来演示具体步骤。 ... [详细]
  • 本文详细解析了ASP.NET 2.0中的Callback机制,不仅介绍了基本的使用方法,还深入探讨了其背后的实现原理。通过对比Atlas框架,帮助读者更好地理解和应用这一机制。 ... [详细]
  • 如何高效查看Java API和源码
    在Java学习过程中,查看API文档和源码是提高编程能力的重要手段。本文将详细介绍如何使用各种工具和方法高效地查看Java API和源码。 ... [详细]
  • 为什么多数程序员难以成为架构师?
    探讨80%的程序员为何难以晋升为架构师,涉及技术深度、经验积累和综合能力等方面。本文将详细解析Tomcat的配置和服务组件,帮助读者理解其内部机制。 ... [详细]
author-avatar
miedao1592_460
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有