Tag: web services

Web服务没有添加引用?

我有3个Web服务添加到类库中的服务引用。(这是一个API使用的示例项目)我需要将它们移动到我的项目中但由于安全问题我无法添加服务引用(安全问题我意味着服务只响应一个IP地址,这是我们客户服务器的IP地址。)是否有办法为该particaluar Web服务生成类似于使用“Ildasm.exe”的类?

如何序列化NHibernate映射对象的所有属性?

我有一些Web方法将我的对象作为序列化XML返回。 它只是序列化对象的NHibernate映射属性……任何人都有一些洞察力? 似乎Web方法实际上是序列化NHibernate代理而不是我的类。 我尝试过使用[XMLInclude]和[XMLElement],但属性仍然没有序列化。 我有一种非常糟糕的hackish方式绕过这个,但我想知道是否有更好的方法! 像这样的东西: public class Graphic { private int m_id; public virtual int Id { get { return m_id; } set { m_id = value; } } private DateTime? m_assigned; public virtual DateTime? Assigned { get { return m_assigned; } set { m_assigned = value; } } private DateTime? m_due; public virtual […]

Web服务应该返回json

我需要我的Web服务才能返回JSON … 我的.asmx文件中有以下代码: namespace Feed { [WebService(Namespace = “http://tempuri.org/”)] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [System.ComponentModel.ToolboxItem(false)] [System.Web.Script.Services.ScriptService] public class searchPerson : System.Web.Services.WebService { [WebMethod] [ScriptMethod(ResponseFormat = ResponseFormat.Json)] public Person GetDave() { Person dave = new Person(); dave.FirstName = “Dave”; dave.LastName = “Ward”; return dave; } } } 返回以下内容: Dave Ward 如何强制它返回JSON而不是XML?

应修改哪些内容以更改C#中的Web服务的URL?

我有一个问题,就在不久前我通过复制所有生成的代码(复制粘贴.cs内容的文本)将Webservice代理类添加到我的应用程序中。 它奏效了! 但现在我需要更改此Web服务代理类使用的URL,我不确定代码中的更改内容和位置。 我很感激,如果你能给我一个线索,可以指导我找到合适的地方,以便我可以更新网络服务的url。

使用从WCF服务到Java Webservice的X.509证书对SOAP消息进行签名

这是我在网上的第一个问题。 希望它有意义。 我在网上看到了几个与此问题相关的博客,我尝试了一些没有成功的想法。 这是我的情况: 我有一个Web应用程序调用WCF Web服务,然后调用Java Web服务。 它们都在不同的服务器上。 WCF Web服务与java Web服务之间的调用未通过https,因为证书足以识别调用者(因此消息安全性)。 Java Web服务(黑盒子) Java Web服务需要收到已签名的消息,并按以下方式工作: 在处理每个请求之前,处理程序拦截所有传入的消息并执行以下validation规则: 1.邮件是否包含安全标头 2.邮件是否包含正确的安全标头ID 3.邮件是否已正确签名 4.邮件是否包含KeyInfo x.509证书 5.证书是否来自可信CA-配置 6.证书是否有效(未过期,已撤销) 7.证书是否包含正确的策略OID 确认所有这些步骤后,可以处理该消息,如果任何步骤失败,则将返回soap消息exception。 SOAP安全标头应根据xxx … w3.org/TR/SOAP-dsig/数字签名规范进行validation。 最完整的描述可以在这里找到xxx … ibm.com/developerworks/webservices/library/ws-security.html这篇IBM文章列出了每个WS-Security标头的详细信息,另外还提供了一个示例签名的SOAP消息。 签署SOAP消息时,还必须将x.509证书添加到消息KeyInfo中,这是证书validation所必需的。 SOAP请求应该是这样的: soe1PnaGXVGrsauC61JSHD+uqGw= Y9SRPQ9TcDu+GazO3LFwodEdhaA= jBX/8XkY2aCte7qgXEp1sbNWmQcK/90iVL58sAvwYAEcBABGzOk2agxR0HvWrNa6ixkocAQ205lggwOxnxZJvoVozVYAAjcLtayPBOUYrnSEBFrwKWP/vxgvUDRIdXeIuw5GLY87NrTQMm1Ehf/HvMX9hTBJn4Nm8RdDiUmPcIo= MIIEbZCCA1WgAwIBAgIES1XpMjANBgkqhkiG9w0BAQUFADBYMRUwEwYKCZImiZPyLGQBGRYFbG9jYWwxFzAVBgoJkiaJk/IsZAEZFgdlbnRydXN0MRIwEAYDVQQDEwllbnRydXN0U00xEjAQBgNVBAMTCWVudHJ1c3RDQTAeFw0xMDA0MjIxMDQ4MDBaFw0xMzA0MjIxMTE4MDBaMGoxFTATBgoJkiaJk/IsZAEZFgVsb2NhbDEXMBUGCgmSJomT8ixkARkWB2VudHJ1c3QxEjAQBgNVBAMTCWVudHJ1c3RTTTESMBAGA1UEAxMJZW50cnVzdENBMRAwDgYDVQQDEwdSYnMgUmJzMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDMf88L2JjLPG1hNmTA/KBiC53WVwS2WU9Jh3lC1Rob6RMzOojomZ/dNrvSRB6nzWeXJpZXwik4XFrsAq24By2SZpLTO4p8Vcq71mTAfDu33cnO49Au2pwNvcMn5qIKBk1Xx+oVb4fzK9ncTRu7bW46HsIYth+qkGhbI2JEHwr/zwIDAQABo4IBrzCCAaswCwYDVR0PBAQDAgeAMCsGA1UdEAQkMCKADzIwMTAwNDIyMTA0ODAwWoEPMjAxMjA1MjgxNTE4MDBaMCMGA1UdIAQcMBowCwYJYIZIAYb6awoEMAsGCSqGSIb2fQdLAzAbBgNVHQkEFDASMBAGCSqGSIb2fQdEHTEDAgEBMIHGBgNVHR8Egb4wgbswb6BtoGukaTBnMRUwEwYKCZImiZPyLGQBGRYFbG9jYWwxFzAVBgoJkiaJk/IsZAEZFgdlbnRydXN0MRIwEAYDVQQDEwllbnRydXN0U00xEjAQBgNVBAMTCWVudHJ1c3RDQTENMAsGA1UEAxMEQ1JMMTBIoEagRIZCZmlsZTovLy8vTVNJREhVLTQ0NUE0RkVFL0NSTC9lbnRydXN0Y2FfZW50cnVzdHNtX2xvY2FsX2NybGZpbGUuY3JsMB8GA1UdIwQYMBaAFBvSL6cPz8L5shubV58yf0pczKzuMB0GA1UdDgQWBBT1/j6OSS8FTjwqluvew16sv7h+VzAJBgNVHRMEAjAAMBkGCSqGSIb2fQdBAAQMMAobBFY4LjADAgSwMA0GCSqGSIb3DQEBBQUAA4IBAQBXxRIA4HUvGSw4L+4uaR51pY4ISjUQWo2Fh7FYBMt29NsKCTdur1OWVVdndt1yjXP4yWXxoAhHtvZL+XNALUFlR2HAWiXuL1nRcxHkB98N5gPqQzW/lJk9cLtL4hVp28EiEpgmKT3I3NP2Pdb2G5MMOdvQ/GFb2y6OwblR8ViPQ8B2aHWzXMrH+0qadPAuBhXyAohwb+mMuYT/ms6xpGi1NMYuYMf6XONz9GkZgnGnMwa+9CCQws1HNz8WYHtmFIxLsVuEWc/0a1vg4IYX1Ds/ttyhJGTVXOSJSkBz8kRyj1pNBDdc1KeG8M++O8m8VgRTJvYaPc7NMiclISukGpea 0061020051 WCF Web服务 我有一个服务器证书(来自可靠CA的p7b格式),我安装在我的WCF Web服务工作站(dev)使用mmc Certificate Snap-in(目前cert在受信任的发布者中)。 我不认为我需要在Java服务器上使用另一个证书,因为响应应该是明确的(既没有签名也没有加密)。 我对这个证书仍然有点困惑 – 一般都是证书 – 因为它似乎只持有一个公钥。 这是我的测试项目的app.config: <!– –> 当我运行一个简单的测试时: WebAS […]

ASP.NET WebService使用XML标记包装我的JSON响应

我不确定我错过了什么,我错过了什么。 我正在构建一个ASP.NET 2.0(在.Net 3.5框架上)Web应用程序,我正在包含一个Web服务。 请注意,这不是 MVC项目。 我希望公开一个返回JSON字符串的方法; 格式化以提供jqGrid jQuery插件。 这是我在我的服务中实现的初步测试方法:感谢( Phil Haack的MVC指南 ) [WebMethod] [ScriptMethod(ResponseFormat = ResponseFormat.Json)] public string getData() { JavaScriptSerializer ser = new JavaScriptSerializer(); var jsonData = new { total = 1, // we’ll implement later page = 1, records = 3, // implement later rows = new[]{ new {id = 1, cell […]

设置.NET Web服务的超时值

我有一个用C#编写的Web服务,它位于SharePoint站点上。 我使用以下代码修改了web.config: … 对于IIS Inetpub文件,SP ISAPI web.config文件和SP布局web.config。 我还使用相同的代码修改了machine.config文件,并试图阻止我在IIS中看到的任何超时。 当我从Windows C#应用程序调用此Web服务时,我可以进入Web方法并开始调试变量但是在很短的时间(~1分钟,可能更少)之后,变量值不再存在,因为它返回: System.Net.WebException“请求已中止:操作已超时。” 我试图弄清楚需要设置正确的超时值以及如何设置。 我完成所有更改后重新启动IIS,但没有任何更改以提供不同的结果。 谢谢

客户端配置以使用WCF JSON Web服务

我已经将Web服务配置为使用Json,如本博客所述: http : //www.west-wind.com/weblog/posts/164419.aspx和其他各种博客,但我无法创建一个客户端来使用它服务。 我尝试了各种各样的东西,但总是有无意义的例外。 实现(我应该添加的WCF)客户端的正确方法是什么?

我的CustomAuthorizationPolicy.Evaluate()方法永远不会触发

我创建了一个带有自定义授权和身份validation的wcf服务,如您所见: public class AuthorizationPolicy : IAuthorizationPolicy { string id = Guid.NewGuid().ToString(); public string Id { get { return this.id; } } public System.IdentityModel.Claims.ClaimSet Issuer { get { return System.IdentityModel.Claims.ClaimSet.System; } } // this method gets called after the authentication stage public bool Evaluate(EvaluationContext evaluationContext, ref object state) { // get the authenticated client identity IIdentity […]

你如何屏幕刮?

如果没有可用的Web服务API,您唯一的选择可能是Screen Scrape,但是如何在c#中执行? 你觉得这样做怎么样?