Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从Android与ASP.net通信_Java_Android_Asp.net - Fatal编程技术网

Java 从Android与ASP.net通信

Java 从Android与ASP.net通信,java,android,asp.net,Java,Android,Asp.net,我对为学校系统创建Java年级门户感兴趣,但在ASP.net表单中发布数据时遇到问题。我已经将数据重定向到我自己的表单,并且数据已经提交,但是由于某些原因,post数据在grade服务本身上无法工作。我已经在应用程序中提交了_VIEWSTATE和_EVENTVALIDATION,但它会重定向回登录页面,并且没有提交任何数据。但有一次,出现了一个ASP.net错误 //Post Data HttpPost post = new HttpPost("https://loudoun.gradebook

我对为学校系统创建Java年级门户感兴趣,但在ASP.net表单中发布数据时遇到问题。我已经将数据重定向到我自己的表单,并且数据已经提交,但是由于某些原因,post数据在grade服务本身上无法工作。我已经在应用程序中提交了_VIEWSTATE和_EVENTVALIDATION,但它会重定向回登录页面,并且没有提交任何数据。但有一次,出现了一个ASP.net错误

//Post Data
HttpPost post = new HttpPost("https://loudoun.gradebook.net/clarity/Gradebook/Logon.aspx?ReturnUrl=%2fclarity%2fGradebook%2f");
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
nameValuePairs.add(new BasicNameValuePair("ctl00$ContentPlaceHolder$Username", username.getText().toString()));
nameValuePairs.add(new BasicNameValuePair("ctl00$ContentPlaceHolder$Password", password.getText().toString()));

//ASP Net Values
nameValuePairs.add(new BasicNameValuePair("__EVENTVALIDATION", "/wEWBgKO4ofwAwLnksmgAQKTpbWbDgLB5+KIBAL4xb20BAK20ZqiCS7btK5SrOdsZpByJbSl/e54HnFG"));
nameValuePairs.add(new BasicNameValuePair("__VIEWSTATE", "/wEPDwUJNTkxNzI3MDIzD2QWAmYPZBYCAgMPZBYGAgEPZBYCAgkPZBYCAgEPZBYIAgMPFgIeB1Zpc2libGVoZAIFDxYCHwBoZAIHDxYCHwBoZAIJDxYCHgVzdHlsZQUjdmVydGljYWwtYWxpZ246bWlkZGxlO2Rpc3BsYXk6bm9uZTtkAgMPDxYCHwBoZGQCBQ9kFghmD2QWAgINDxYCHgVjbGFzcwUQc2luZ2xlU2Nob29sTGlzdBYCAgEPZBYCAgEPEGQPFgFmFgEQBQdMb3Vkb3VuBQhQaW5uYWNsZWdkZAICD2QWAgITD2QWAgIBD2QWAgIBDxBkZBYAZAIHDw8WAh4EVGV4dAUmUGlubmFjbGUgR3JhZGVib29rIDIwMTMgQmFjayB0byBTY2hvb2xkZAIIDw8WAh8DBTdDb3B5cmlnaHQgKGMpIDIwMTMgR2xvYmFsU2Nob2xhci4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuZGRkMXxrC8X7aL5DXnqLrWuJLNNSTxY="));

post.setEntity(new UrlEncodedFormEntity(nameValuePairs));

HttpClient client = new DefaultHttpClient();
HttpResponse response = client.execute(post);
HttpEntity entity = response.getEntity();

String responseText = EntityUtils.toString(entity);

System.out.println(responseText);
//发布数据
HttpPost=新的HttpPost(“https://loudoun.gradebook.net/clarity/Gradebook/Logon.aspx?ReturnUrl=%2fclarity%2fGradebook%2f");
List nameValuePairs=新的ArrayList(2);
添加(新的BasicNameValuePair(“ctl00$ContentPlaceHolder$Username”,Username.getText().toString());
添加(新的BasicNameValuePair(“ctl00$ContentPlaceHolder$Password”,Password.getText().toString());
//ASP净值
nameValuePairs.add(新的基本nameValuePairs(“uu EVENTVALIDATION“,”/wEWBgKO4ofwAwLnksmgAQKTpbWbDgLB5+KIBAL4xb20BAK20ZqiCS7btK5SrOdsZpByJbSl/e54HnFG”);
添加(新的BasicNameValuePair(“\uuuu VIEWSTATE”,"/我们的研究结果表明,我们的研究结果表明,我们的研究结果是:我们的研究结果表明,我们的研究结果是:我们的研究结果表明,我们的研究结果是:我们的研究结果表明,我们的研究结果是:我们的研究结果是:我们的研究结果表明,我们的研究结果是:我们的研究结果是:我们的研究结果表明,我们的研究结果是:我们的研究结果是:我们的研究结果是:我们的研究结果是:我们的研究结果是:我们的研究结果是:我们的研究结果是:我们的研究结果是:我们的研究结果是:我们的研究结果是:我们的研究结果是:我们的研究结果是:我们的研究结果是:我们的研究结果是:我们的研究结果是:我们的研究结果是:我们的研究结果是:我们的研究结果是:我们的研究结果是:我们的研究结果是:我们的研究结果是:我们的研究结果是:我们的研究结果是:我们的研究结果是:我们的研究结果是:我们GV4DAUMUGLUBMFGJBGUGR3JHZGVIB29RIDIWMTMGQMFJAYB0BY2HVB2XKZAIIDW8WAH8DBTDDB3B5CMLNAHQGGMPIDIWMTMGR2xVYMFSU2NOB2XHCI4GIEFSBCBYAWDODHMGCMVZZZWZGRKMXXRC8X7AL5DXNQLRWUJLNNSTXY=“);
setEntity(新的UrlEncodedFormEntity(nameValuePairs));
HttpClient=new DefaultHttpClient();
HttpResponse response=client.execute(post);
HttpEntity=response.getEntity();
String responseText=EntityUtils.toString(实体);
System.out.println(responseText);

当然,我不能提供用户名和密码供您测试(违反县政策),但也许我可以获得有关它为什么不能正常工作的相关信息。

服务器上是否记录/报告了任何信息,表明请求失败的原因?我想
\uuu EVENTVALIDATION
和/或
\uu VIEWSTATE
值可能会随着每个请求而改变,部分原因是为了阻止您的尝试。Y您可能需要首先请求页面,从响应中解析出这些值,并将解析后的值包含在POST请求中。David的做法是正确的——这是一种防止外部应用程序“模仿”的安全措施“a
Postback
,这是ASP.NETWebForms中的机制。根据ASP.Net应用程序上的验证次数,您可能无法完成您正在尝试执行的操作。-旧的,但给出了基本的想法,与链接到MSDN。“grade服务”(我假设这就是服务)不是有不同的API吗?我对它进行了更多的研究,发现您对事件验证更改的看法是正确的。也许我会研究一下API并使用它一段时间。