/// <summary>
/// 首先登陆账号
/// </summary>
/// <returns></returns>
public string Odoo()
{
try
{
string postString = Json();//这里即为传递的参数,可以用工具抓包分析,也可以自己分析,主要是form里面每一个name都要加进来
byte[] postData = Encoding.UTF8.GetBytes(postString);//编码,尤其是汉字,事先要看下抓取网页的编码方式
string url = OdooModel.LoginUrl;//地址
WebClient webClient = new WebClient();
webClient.Headers.Add("Content-Type", "application/json");//采取POST方式必须加的header,如果改为GET方式的话就去掉这句话即可
byte[] responseData = webClient.UploadData(url, "POST", postData);//得到返回字符流
string srcString = Encoding.UTF8.GetString(responseData);//解码
return srcString;
}
catch (Exception ex)
{
return ex.ToString();
}
}
public string Json()
{
Dictionary<string, object> Modela = new Dictionary<string, object>();
Dictionary<string, object> Modelb = new Dictionary<string, object>();
Modela.Add("jsonrpc", "2.0");
Modela.Add("method", "call");
Modelb.Add("db", OdooModel.Db);
Modelb.Add("login", OdooModel.LoginName);
Modelb.Add("password", OdooModel.Pwd);
Modela.Add("params", Modelb);
return JsonCommon.ObjectToJson(Modela);
}