WebService – 3.后台调用WebService,根级别上的数据无效

1.因为我的webservice返回的是json,

2.ajax传递跨域不安全,

3.contentType: "application/json; charset=utf-8", 这个是直接访问的webservice

 

所以还是采用后台调用

如果引用微软的webService直接new对象,调用方法,就会报错根级别上的数据无效

困扰了我1天,最后的解决方法,

创建辅助类,

    public class WebServiceHelper
    {
        /// <summary>
        ///
        /// </summary>
        /// <param name="url">地址</param>
        /// <param name="method">方法</param>
        /// <param name="param">json参数</param>
        /// <returns></returns>
        public static string WebServiceApp(string url, string method, string param)
        {
            byte[] byteArray = Encoding.UTF8.GetBytes("json=" + param);
            HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(new Uri(url + "/" + method));
            webRequest.Method = "POST";
            webRequest.ContentType = "application/x-www-form-urlencoded";
            webRequest.ContentLength = byteArray.Length;
            Stream newStream = webRequest.GetRequestStream();
            newStream.Write(byteArray, 0, byteArray.Length);
            newStream.Close();
            HttpWebResponse response = (HttpWebResponse)webRequest.GetResponse();
            StreamReader php = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
            string phpend = php.ReadToEnd();

            return phpend;
        }
    }

 

 

 

调用方法:

时间: 2024-11-10 14:06:29

WebService – 3.后台调用WebService,根级别上的数据无效的相关文章

xml提示“根级别上的数据无效”

xml提示“根级别上的数据无效” 1.读取xml文档的时候提示,后百度结果:使用Load()方法是读取文档,xmlLoad()是读取字符串. 2. <?xml version="1.0" encoding="gb2312"?> 当xml文档编码(encoding="gb2312")是gb2312时,xml文档应该是ANSI,不然会乱码. 3.正确的实例: string ff = "/File/XML/xml.xml"

根级别上的数据无效。 行 1,位置 1

public void Parse(string xml) { this.Items=new RssItemCollection(); XmlDocument xDoc=new XmlDocument(); try { //xDoc.LoadXml(xml); xDoc.LoadXml(xml.Trim()); } catch(Exception e) { throw new Exception("内容不符合标准",e); } } 加载XML时始终 根级别上的数据无效. 行1,位置1

C# XML 根级别上的数据无效,XMLDriver,Xpath

using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.IO; using System.Xml; namespace 六月版.客户.网站.Models { public static class XMLDriver { public static List<string> GetObjects(string nodeName, string filepa

无法显示xml,根级别上的数据无效,第1行,位置1

出现这样的提示一般是xml出了问题,网上有很多修改的方法,而我这里的xml是通过webservice返回来的,出现这样的提示肯定是服务出了问题,一种原因是更改了web服务后返回的xml被编码,在C#中使用UrlDecode可进行反编码解决此问题,需要添加system.web引用,然后 temp=HttpUtility.UrlDecode(temp,Encoding.UTF8); temp是返回的xml我这里是string格式,UTF8即是编码.解决!

C# LoadXml 报错:xml 根级别上的数据无效

坑啊,搜了下园子里,一样的XD不少,方法试了几个对我的代码也无效,折腾了一晚上才搞定. 去掉BOM头 writer = new XmlTextWriter(stream, new UnicodeEncoding(false,false)); 如果是UTF8 writer = new XmlTextWriter(stream, new UTF8Encoding(false));

vs上出现&quot;未能加载项目文件,根级别上的数据无效.Microsoft.WinFx.targets&quot;的解决方法

问题: 本人尝试百度.谷歌和发帖,均未能找到解决办法.最好误打误撞解决了: 1.删除C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.WinFx.targets文件 2.将C:\Program Files (x86)\MSBuild\12.0\Bin\Microsoft.WinFx.targets文件复制到C:\Windows\Microsoft.NET\Framework\v4.0.30319中 此时会出现这样的错误: 直接把这个.

XML错误: 根级别上的数据无效 行1 位置1

一个好好的xml,改动了一点内容,就出了这样的问题. 格式没有错,却除了这样的问题,莫名其妙! 百度之! 一.trim()方法 错误原因:“不加Trim的字符中多了一个"."从而导致xml出错”?.根据这里的方法: http://www.cnblogs.com/huangtailang/p/3850522.html public void Parse(string xml) { this.Items=new RssItemCollection(); XmlDocument xDoc=n

搭建调用 WebService 的 ASP.NET 网站 (VS2010, C#)

[系统环境]Windows 7 / 2008r2 [软件环境]Visual Studio 2010 [开发语言]C# [感谢]本文是在 <C#开发和调用Web Service> 一文的基础上做了少许修改及补充后整理所得. 1. WebService 1.1 基本概念 Web Service也叫XML Web Service Web Service是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量级的独立的通讯技术.是:通过SOAP在Web上提供的软件服务,使

利用JavaScriptSOAPClient直接调用webService --完整的前后台配置与调用示例

JavaScriptSoapClient下载地址:https://archive.codeplex.com/?p=javascriptsoapclient JavaScriptSoapClient的Demo实例:  http://www.guru4.net/articoli/javascript-soap-client/demo/en.aspx 利用JavaScript SOAP Client直接调用webService --完整的前后台配置与调用示例 2013年01月04日 17:15:32