Articles of post

使用Android发送HTTP发布请求

我一直试图从SO和其他网站上的大量例子中学习,但我无法弄清楚为什么我一起攻击的例子不起作用。 我正在构建一个小概念validation应用程序来识别语音并将其作为POST请求发送给node.js服务器。 我已经确认语音识别工作,服务器正在接收来自常规浏览器访问的连接,因此我开始相信问题出在应用程序本身。 我错过了一些小而愚蠢的东西吗? 没有错误被抛出,但服务器永远不会识别连接。 提前感谢任何建议或帮助。 相关Java(主要活动和必要的AsyncTask): protected void onActivityResult(int requestCode, int resultCode, Intent data) { if (requestCode == 1001) { if (resultCode == RESULT_OK) { ArrayList textMatchList = data.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS); if (!textMatchList.isEmpty()) { String topMatch = textMatchList.get(0); PostTask pt = new PostTask(); pt.execute(topMatch); } } } } private class PostTask extends AsyncTask { @Override protected […]

使用Android提交到Google电子表格表单

第一次在这里问一个问题。 通常我可以在不必询问的情况下find答案,但这次我被困住了,无法弄清楚我错过了什么。 我只是想让我的Android应用在网站上填写表格并提交。 我不需要应用程序对发回的任何数据执行任何操作,只需填写表单并提交即可。 基本上我正在尝试收集投票应用程序的结果。 我认为表单提交很简单所以我创建了一个Google电子表格并用它制作了一个表单。 我想我会将Android应用程序指向表单,然后我会在电子表格中包含所有数据供以后查看。 我无法让Android应用程序实际填写表单。 这是资源。 形成 电子表格 private void submitVote(String outcome) { HttpClient client = new DefaultHttpClient(); HttpPost post = new HttpPost(“https://spreadsheets.google.com/spreadsheet/formResponse?hl=en_US&formkey=dDlwZzh4bGFvNFBxUmRsR0d2VTVhYnc6MQ&ifq”); List results = new ArrayList(); results.add(new BasicNameValuePair(“entry.0.single”, cardOneURL)); results.add(new BasicNameValuePair(“entry.1.single”, outcome)); results.add(new BasicNameValuePair(“entry.2.single”, cardTwoURL)); try { post.setEntity(new UrlEncodedFormEntity(results)); } catch (UnsupportedEncodingException e) { // Auto-generated catch block Log.e(“YOUR_TAG”, “An […]

如何在Android上的HttpPost中发送unicode字符

我正在尝试在我的应用中允许多语言支持,这使得HTTPpost可以上传新消息。 为了支持日语和其他非拉丁语言,我需要做什么? 我的代码目前看起来像这样: //note the msg string is a JSON message by the time it gets here… private String doHttpPost(String url, String msg) throws Exception { HttpPost post = new HttpPost(url); StringEntity stringEntity = new StringEntity(msg); post.setEntity(stringEntity); return execute(post); }

将Cookie设置为Android中的webView

我在检查用户名或密码是否正确时从服务器获取HttpResponse 。 当我在webview加载url ,我希望webView拥有cookie(我使用postData()得到的答案存储在webView 。我希望webView获取cookie并加载存储在webview中的cookie的url。 我得到了回应。 public HttpResponse postData() { HttpClient httpclient = new DefaultHttpClient(); HttpPost httppost = new HttpPost(“https://example.com/login.aspx”); try { List nameValuePairs = new ArrayList(2); nameValuePairs.add(new BasicNameValuePair(“txtUsername”, “user”)); nameValuePairs.add(new BasicNameValuePair(“txtPassword”, “123”)); httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); HttpResponse response = httpclient.execute(httppost); String responseAsText = EntityUtils.toString(response.getEntity()); Log.v(TAG , “Response from req: ” + responseAsText); return responseAsText; } catch […]

如何将Cookie会话ID放入截击请求?

所以,我有这个代码用截击发出一个POST请求: public class MainActivity extends AppCompatActivity { Button btnSearch; ProgressDialog loadingDialog; ListView lvResult; String session_id; RequestQueue queue; MyCookieManager myCookieManager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); btnSearch = (Button) findViewById(R.id.btnSearch); lvResult = (ListView) findViewById(R.id.lvResult); loadingDialog = new ProgressDialog(MainActivity.this); loadingDialog.setMessage(“Wait.\nLoading…”); loadingDialog.setCancelable(false); myCookieManager = new MyCookieManager(); requestCookie(); //FIRST CALL TO GET SESSION ID btnSearch.setOnClickListener(new View.OnClickListener() { […]

无法抓取http POST文件上传进度(Android)

我正在开发一个Android应用程序,使用户能够将文件上传到Twitpic等服务。 POST上传完成后没有任何外部库,工作正常。 我唯一的问题是,我无法获取任何进展,因为所有上传都在我收到响应时完成,而不是在将字节写入输出流时完成。 这是我做的: URL url = new URL(urlString); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setDoInput(true); conn.setDoOutput(true); conn.setUseCaches(false); conn.setRequestMethod(“POST”); conn.setRequestProperty(“Connection”, “Keep-Alive”); conn.setRequestProperty(“Content-Type”, “multipart/form-data;boundary=” + boundary); DataOutputStream dos = new DataOutputStream(conn.getOutputStream()); 然后我将表单数据写入dos,现在这里并不重要。 之后我自己编写文件数据(从“in”读取,这是我要发送的数据的InputStream): while ((bytesAvailable = in.available()) > 0) { bufferSize = Math.min(bytesAvailable, maxBufferSize); byte[] buffer = new byte[bufferSize]; bytesRead = in.read(buffer, 0, bufferSize); dos.write(buffer, 0, bytesRead); […]

如何以JSON格式将Android中的数据发布到服务器?

我有这个JSON字符串。 我想将它发布到服务器(即使用POST方法)。 如何在Android中完成? JSON字符串: { “clientId”: “ID:1234-1234”, “device”: { “userAgent”: “myUA”, “capabilities”: { “sms”: true, “data”: true, “gps”: true, “keyValue”: { “Key2”: “MyValue2”, “Key1”: “myvalue1” } }, “screen”: { “width”: 45, “height”: 32 }, “keyValue”: { “DevcKey2”: “myValue2”, “DevcKey1”: “myValue1” } }, “time”: 1294617435368 } 如何构建此JSON数组并将其POST到服务器?

使用改造使用参数发送发布请求

我尝试使用Retrofit库在Android上使用API​​时失败,但在使用POSTMAN时我可以看到预期的结果。 邮递员设定 api url(基地+控制器) HTTP方法设置为POST 点击了from-data或x-www-form-urlencoded 然后我在键/值字段上传递两个参数。 ANDROID改装设置 @POST(“/GetDetailWithMonthWithCode”) void getLandingPageReport(@Query(“code”) String code, @Query(“monthact”) String monthact, Callback cb); @FormUrlEncoded @POST(“/GetDetailWithMonthWithCode”) void getLandingPageReport(@Field(“code”) String code, @Field(“monthact”) String monthact, Callback cb); 这些选项都不起作用。 但结果是{}。 UPDATE 使用标准HttpClient (和HttpPost )类的相同设置工作正常。 HttpClient client = new DefaultHttpClient(); HttpPost post = new HttpPost(url); List urlParameters = new ArrayList(); urlParameters.add(new BasicNameValuePair(“code”, “testcode”)); urlParameters.add(new BasicNameValuePair(“monthact”, […]

Volley JsonObjectRequest Post参数不再有效

我正在尝试在Volley JsonObjectRequest中发送POST参数。 最初, 它通过遵循官方代码所说的传递包含JsonObjectRequest的构造函数中的参数的JSONObject来为我工作 。 然后它突然停止工作,我没有对以前工作的代码进行任何更改。 服务器不再识别正在发送任何POST参数。 这是我的代码: RequestQueue queue = Volley.newRequestQueue(this); String url =”http://myserveraddress”; // POST parameters Map params = new HashMap(); params.put(“tag”, “test”); JSONObject jsonObj = new JSONObject(params); // Request a json response from the provided URL JsonObjectRequest jsonObjRequest = new JsonObjectRequest (Request.Method.POST, url, jsonObj, new Response.Listener() { @Override public void onResponse(JSONObject response) […]

Android Retrofit内容types为application / x-www-form-urlencoded

Android开发相当新颖。 我正在尝试使用改造来发送post请求。 在我的改造日志中,我看到了 Content-Type: text/plain; charset=utf-8 我发现请求只有在我使用内容types时才有效: application/x-www-form-urlencoded 我搜索了谷歌,并没有find明确的方法来明确设置内容types。 谁知道怎么做?