1

我是 android 开发的新手,现在我需要创建和使用 POST 请求。根据这篇文章 ,我试图把我的数据:

            List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(13);
            nameValuePairs.add(new BasicNameValuePair("SelectedCode", "25"));
            nameValuePairs.add(new BasicNameValuePair("Phone", "1234567"));
            nameValuePairs.add(new BasicNameValuePair("Text", "1234"));
            nameValuePairs.add(new BasicNameValuePair("IsTranslit", "false"));
            nameValuePairs.add(new BasicNameValuePair("IsShedule", "false"));
            nameValuePairs.add(new BasicNameValuePair("LastDate", ""));
            nameValuePairs.add(new BasicNameValuePair("LastDateHour", "00"));
            nameValuePairs.add(new BasicNameValuePair("LastDateMinuts", "00"));
            nameValuePairs.add(new BasicNameValuePair("DateSendBefore", ""));
            nameValuePairs.add(new BasicNameValuePair("DateSendBeforeHour", "00"));
            nameValuePairs.add(new BasicNameValuePair("DateSendBeforeMinuts", "00"));
            nameValuePairs.add(new BasicNameValuePair("CaptchaDeText", "h3Vcjwk2moLagspo7lnKpg%3D%3D"));
            nameValuePairs.add(new BasicNameValuePair("CaptchaInputText", "4myin2"));
            httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));

它不起作用。然后我尝试使用此代码(对不起,很长的一行)

            httppost.setEntity(new StringEntity("SelectedCode=25&Phone=1234567&Text=123&IsTranslit=false&IsShedule=false&LastDate=&LastDateHour=00&LastDateMinuts=00&DateSendBefore=&DateSendBeforeHour=00&DateSendBeforeMinuts=00&CaptchaDeText=h3Vcjwk2moLagspo7lnKpg%3D%3D&CaptchaInputText=4myin2"));

有效。有人可以解释有什么区别或我做错了什么吗?

更新:

不起作用我的意思是服务器不认为这个帖子请求是正确的。例如,如果我在 NameValuePair 列表中添加不正确的值,就会发生这种情况。但是从我的角度来看,第一段代码和第二段代码中的名称和值是相同的。这让我想知道。

4

1 回答 1

1

vmirionov 的评论解决了这个问题。改变h3Vcjwk2moLagspo7lnKpg%3D%3Dh3Vcjwk2moLagspo7lnKpg==制造诡计。

于 2013-03-20T20:15:47.853 回答