无法解析共享文档:LinkedIn REST API共享中的错误

时间:2014-01-27 09:15:43

标签: c# asp.net-mvc asp.net-mvc-4 rest linkedin

我尝试在我的MVC 4应用程序中调用带有Hammock库函数的共享REST API。

请参阅下面的代码

    public ActionResult SharePost()
    {
        string content = "";
        try
        {
            var credentials = new OAuthCredentials
            {
                ConsumerKey = "xxxxxxxxxxxxxx",
                ConsumerSecret = "xxxxxxxxxxxxxxxx",
                Token = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
                TokenSecret = "xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
                Verifier = verifier,
                Type = OAuthType.AccessToken,
                ParameterHandling = OAuthParameterHandling.HttpAuthorizationHeader,
                SignatureMethod = OAuthSignatureMethod.HmacSha1,
                Version = "1.0"
            };

            var client = new RestClient { Authority = "http://api.linkedin.com/v1", Credentials = credentials, Method = WebMethod.Post };
            var request = new RestRequest { Path = "/people/~/shares" };

            StringBuilder sbAppend = new StringBuilder();
            sbAppend.AppendLine("<?xml version=1.0 encoding=UTF-8?>");
            sbAppend.AppendLine("<share><comment>Check out the LinkedIn Share API!</comment><content><title>LinkedIn Developers Documentation On Using the Share API</title><description>Leverage the Share API to maximize engagement on user-generated content on LinkedIn</description><submitted-url>https://developer.linkedin.com/documents/share-api</submitted-url><submitted-image-url>http://m3.licdn.com/media/p/3/000/124/1a6/089a29a.png</submitted-image-url></content><visibility><code>anyone</code></visibility></share>");

            client.AddHeader("Content-Type", "text/xml");

            byte[] msg = Encoding.Default.GetBytes(sbAppend.ToString());
            client.AddPostContent(msg);

            RestResponse response = client.Request(request);
            content = response.Content;

        }
        catch (Exception ex)
        {
            throw ex;
        }
        return Content(content);
    }

但我得到一个错误responsece.content

enter image description here

修改

我在xml标题中使用双引号。但总是显示相同的错误。

enter image description here

有什么不妥吗?

我没有在fiddller中看到post xml值。请看这个图像

enter image description here

请帮忙。

1 个答案:

答案 0 :(得分:1)

我发现你错过的XML错误“” 试试这个

sbAppend.AppendLine('<?xml version="1.0" encoding="UTF-8"?>');