我知道web服务是无状态的。我想知道是否有任何方法可以在客户端公开属性(getter和setter)公开属性(客户端是vb consumer而不是javascript)?我们能否在客户端公开属性的Web服务?
1
A
回答
0
您可以从Web服务“暴露”的唯一东西是[WebMethod]
。
你可以使用代码访问Web服务这样的:
Dim svc as New WebReference.MyWebService()
Dim result As Integer = svc.GetSomeInteger()
svc.SetSomeInteger(result)
Dim result2 As Integer = svc.GetSomeInteger()
你可能会认为你已经创建的Web服务类的一个实例。你还没有。您只在VB.NET代码中创建了代理类的实例。在上面的代码中,每个对Web服务的调用都通过相同的客户端代理实例,但会转到服务器端Web服务类的不同实例。
即使Web服务具有属性或字段,因为每次调用都会有不同的Web服务实例,所以每次都会有不同的“SomeInteger”版本。
0
Web服务是基于方法的,所以它们不用于访问属性。
但没有理由不能让GetX/SetX方法像常规服务方法一样暴露 - 只要确保包含[WebMethod]
属性。
0
正如其他人所建议的,您将需要使用get/set方法而不是属性。
至于从JavaScript访问Web服务,只需在URL中指定方法名称并执行XmlHttpRequest。
相关问题
- 1. Web服务/客户端事务属性
- 2. 优化Web服务客户端性能?
- 3. 将WCF服务公开给asmx客户端和WCF客户端
- 4. Web服务 - 客户端类
- 5. CodeIgniter Web服务客户端
- 6. Web服务客户端Java
- 7. java web服务客户端
- 8. Java Web服务客户端:
- 9. Java Web服务客户端
- 10. Groovy Web服务客户端
- 11. Android客户端Web服务
- 12. Python web服务客户端
- 13. Web服务wcfstorm客户端
- 14. C#Web客户端性能
- 15. Web服务客户端和服务器
- 16. 客户端调用.asmx,服务器公开WCF端点
- 17. Web服务客户端在JBOSS 5.1 JDK6
- 18. 在客户端使用web服务asp.net
- 19. PHP:SOAP Web服务客户端web服务ASP.NET服务器
- 20. 测试公共Web服务的客户端
- 21. 如何将EJB公开为Web服务,稍后让我在ejb更改时保持客户端兼容性?
- 22. 在服务器端获取客户端只读属性?
- 23. C#公共IP客户端/服务器
- 24. 如何使QA测试我的Web服务而不是迫使我测试他们的Web服务客户端?
- 25. Web服务客户端的问题
- 26. Java中的Web服务客户端
- 27. Perl中的Web服务客户端
- 28. C++的Web服务客户端库
- 29. Web服务中的JPos客户端
- 30. 如何分离开发客户端Web UI和服务器端
谢谢乔。如果我使用函数,则不会保留变量/属性的状态。例如:Webservice有一个变量a = 5。我有一个'设置'功能,将值设置为10.现在在我的下一行客户端代码中,如果我访问a,它的原始值为5. – Praneeth
据我所知,您不能在活动后重新使用服务本身的实例第一个电话会发生。我唯一能想到的就是做一些有趣的事情,比如在你的服务类中保留一个静态字典,并让这些实例保持活跃状态。然后,您需要将该实例的唯一密钥传回给客户端,并让客户端将其传回给每个未来的请求,然后该服务将检索特定实例并从中激发请求,而不是激活的实例。 –