问题标签 [uritemplate]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 用于在 URI 模板 (RFC 6570) 中提取值的独立 Java 实现?
是否有 Java 独立实现来提取 URI 中由 URI-Template (RFC 6570) 定义的参数值?
我发现的最佳实现是 ruby 实现(https://github.com/sporkmonger/addressable)
通过http://code.google.com/p/uri-templates/wiki/Implementations我找到了一个 Java 实现:Handy-URI-Templates
它支持将带有参数值的 URI-Template 解析为最终 URI。不幸的是,它不能做相反的事情:根据 URI-Template 提取 URI 中的参数值。
JAX-RS(或 Restlet)的实现在内部具有此功能。但似乎没有人能够独立使用这个可以独立使用的功能模块。
有人有其他想法吗?
这是使用 spring-Web 的示例:
另一个泽西岛(JAX-RS 实现):
带接口:
wcf - 具有基于 URI/URL 的功能的 WCF Web 服务
我正在使用 WCF 服务替换旧的 CMS 托管 API。
对于旧系统/数据库中的每个客户端站点,它的工作方式如下:
clientdomain.com从hostingdomain.com/clientdomain/api.xml的 URL 中提取其内容 (XML) (.xml 扩展名实际上是一个经典的 ASP 页面,它基于 clientdomain 导出为 XML)
例如:来自 hostingdomain/clientdomain/photos/api.xml 的 clientdomain.com/photos 提要
并且所有客户端域都使用相同的 api.xml 文件,如 hostingdomain/ clientdomain2 /photos/api.xml等。
我猜在界面设置中像:
我可以/如何将URITemplate中的客户端域更改为从我从数据库获得的列表/数组中提供数据?...或类似的东西,以便它知道 /client1/photos 和 /client2/photos 可用作 UriTemplates?还是我遗漏了什么?...我在 WCF 中遇到了整个 URI/URL 问题...
我可以做一些不同的事情并使用像photos.clientdomain.com这样的东西并将所有域添加为主机头和......??......沿着这条路线?无论是 WCF 和所有爵士乐中的最佳实践和安全。
这样做的目的是最终移动应用程序和网站都将从这个 WCF 中提取。(以及随后的推/拉管理应用程序)
旧系统使用了一些非常有趣的 IIS 诡计和经典的 asp 东西,而我将留下一些东西......所以......有什么想法吗?
wcf - 在 WCF 中,我可以在 UriTemplate 的文字段中使用通配符吗?
我正在使用 .Net 4.0 创作一个 RESTful WCF 服务。我想要以下两个网址:
映射到相同的接口成员:
我尝试将通配符放入文字 URL 段:
但是,这是无效的,我得到以下异常:
如果我将通配符段包装在模板大括号中:
然后我得到一个异常,因为方法参数中没有这样的输入参数:
我的解决方法是简单地有两个条目,指向不同的方法,然后让这些方法调用一个通用实现:
但这似乎有点丑陋。
我已阅读文档,无法找到这一点的具体地址。有什么方法可以在 WCF 中使用通配符文字段吗?或者这在 WCF 中是不可能的吗?
wcf - 为什么 WCF 服务正在获取旧的参数值
我已经设置了两个项目。一是WCF服务项目,合同如下:
其他项目使用此 WCF 服务。当我使用其他一些参数调用 WCF 服务时,参数值filterName
和第一次调用发送的值保持不变。filterValue
为什么 WCF 服务会保留参数的值?
wcf - WCF UriTemplate UrlEncode
想象一下,我想使用 WCF 调用外部(意味着我无法控制合同)REST 服务。我有以下合同
假设我的参数之一是正斜杠 (/)
如何强制 WCF 对我的 UriTemplate 路径参数进行 UrlEncode?
wcf - 具有不同参数的多种方法 WCF REST
我被赋予了使用 WCF REST 实现以下任务的任务:
这本身不是问题,但问题是所有这些函数都需要不同的参数。例如, POST 方法采用WSDevice,而 GET 方法采用WSCollectionQuery作为参数(用于查询 well .. 集合)。所有 4 种方法都采用不同的参数,但必须通过/device Uri 访问。
这在 REST 中应该是可能的(根据http://pages.apigee.com/web-api-design-ebook-thank-you-download.html?aliId=1911411,我首先从那里得到了表格。见第 7 页)。
我目前拥有的:
因此,基本上我希望拥有相同的 UriTemplate,但结果不同,具体取决于消息正文中传递的参数。我知道我在 Uri 中添加了上面的参数,但这只是为了尝试区分 Uri。
我得到的错误如下:
我知道为什么我会收到此错误。我想知道的是如何解决这个问题?我已经研究过有一个函数采用Method = "*"可以工作,但是除了在函数中传递的参数之外,我无法访问任何参数。
如果有人知道这个问题的解决方案,或者可以说如果不是的话,那是不可能的,那将非常非常感谢!
编辑:我现在也知道您不能在 GET 中传递复杂类型,但这是一个可以解决的问题。
java - URI 模板需要与作为一组文件夹的变量值匹配
我正在使用 org.springframework.web.util.UriTemplate 并且我正在尝试匹配这个 uri 模板:
使用以下 uri:
目前我得到以下uri变量:
但我想获得以下 uri 变量:
我尝试在模板中使用通配符作为 * 或 +,但这似乎不起作用:
已编辑
rest - 在 wso2 esb 中创建休息服务时使用多个 Uri 模板
我创建了一个休息服务:
在我的 InSequence GetNotificationsIN我的有效载荷是:
现在,我在这里传递了一个参数,即 ID,并且工作正常。但是我实现其余服务的实际服务接受五个参数,它们是 ID、标签、源、状态和类别。在实际服务中,我可以传递任何一个参数,即 ID、标签、来源、状态或优先级,服务会根据传递的参数给我数据。
类似地,我想在我的休息服务中做同样的事情,即在 uri 模板中我想实现这五个参数,从而使五个 uri 模板变量被逻辑或分隔,这样如果我用任何 uri 打休息服务的 url模板它应该给我来自实际服务的响应。我怎样才能做到这一点?提前致谢
wcf - WCF 中 UriTemplate 中的可选参数
我在这个线程中使用了提示并提供了一个默认值,所以当用户没有指定虚拟子目录时,我假设他的意思是要列出所有的东西。有用。
但是,最好指定一个默认值,而不是。但是,default(String)为空,我想发送一个实际值。特别是,我已经把我的心放在了String.Empty上。但是,我注意到以下内容不起作用。服务器端的条件无法识别空字符串(...where 'type' in (ColName, '', 'all'))。
该怎么办?
c# - WCF 接口上 UriTemplate 的更改导致整个服务失败。
这是我第一次尝试通过托管在 Windows 服务中的 WCF 提供服务。我注意到,如果我在 UriTemplate 中做错了什么,它会完全破坏一切,我不知道为什么。
例子:
在第一个代码示例中,一切正常。该服务等待我定义的基地址并返回我期望的信息。
在这个示例中,我将所有内容更改UriTemplate = "/GetDetail?id={id}"
为UriTemplate = "/GetDetail/{id}"
中断。该服务甚至不等待我配置的基地址。
我不明白这种变化如何导致一切都失败?它不应该只是无法处理 GetDetail 调用而不破坏整个系统吗?
还要对此进行扩展,如何将日志记录添加到我的服务中。