Postdata格式化

时间:2016-01-29 00:12:09

标签: c# httpwebrequest httpwebresponse postdata

我对c#中postData的格式有一个简单的问题。以下是我认为从Google Chrome中提取的帖子数据。该数据与创建电子邮件有关。如果有人有任何建议或点任何真正有用的错误。提前致谢

发布数据

/reg_json?GivenName=findmeeasy&FamilyName=notebook&AccountID=@yahoo.com&PartnerName=yahoo_default&ApiName=ValidateFields&RequestVersion=1&intl=us&u=r333.member.bf1.yahoo.com56a54898077dc5.76327249&t=omaWrw2j1XMYYqsuNAvhoksAu08PTvyAF.VLF5WV3CEDJjE1oXISM8YYtNCMH4jqCmeEiFNVFSEj9MUCaEI4XkBtmeyboO6R4H0SI2tgb1vIz0gsI_3fMFByGY9uDyBssJxV0IHFuNAH4vDMGF0aJrn9AOLwjvxvEjBnGAdd0a_O1K4EyNP6xBkP59d9htdyrvTfsWsjfxNOSEJ1Cz4I0ynjBX7jBtorMVaPeGNxPxOhkNhIeaRR1M7pwIqaN9JxS8Sz4dhVccpdLlwvct.a6PGX1fEWZnvPowfODogHPIdJ1wq3dcwa4r4uK7K.QMHdzJobys_bJwGdKBXjQx7VL6WA_0Xoe9wk3xXZ13hIaR0zaCnDvWINPyX4.40.cw59.W5So13znpBXX.B4ZiD89OByV7c_cc1gzmjPVSOOcBQVAFljk72gPqq5GNA_iWAMAgYSH0lMacvUQSOpc6XnVjshMJRqRwQncoYn7j83WmOximNzdAoOOH.C8yeF6v3uxJVhOS111OCd2N37WucRBTdMWDOSTzDCx53a7E9fCNn9p_4PUGKr07WPRj5.9svMxv.PrKg_bJdLnJI-~B&1453672621368 HTTP/1.1

我尝试格式化

StringBuilder postData = new StringBuilder();
postData.Append("/reg_json?GivenName=findmeeasy");
postData.Append("&FamilyName=notebook");
postData.Append("&AccountID=@yahoo.com");
postData.Append("&PartnerName=yahoo_default");
postData.Append("&ApiName=ValidateFields");
postData.Append("&RequestVersion=1");
postData.Append("&intl=us");
postData.Append("&u=r333.member.bf1.yahoo.com56a54898077dc5.76327249");
postData.Append("&t=omaWrw2j1XMYYqsuNAvhoksA.....");

1 个答案:

答案 0 :(得分:-1)

您必须确保变量名称和数据值都是URL转义 - 它们看起来是这样。但这可能是共同发生的。

我会做这样的事情

 using System;

 private static string MakeData(string name, string value)
 {
     return Uri.Escape(name) + "=" + Uri.Escape(value);
 }

 ...

postData.Append("/reg_json?" + MakeData("GivenName", "findmeeasy"));
postData.Append("&" + MakeData("FamilyName", "notebook"));
/// etc.