Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

JSON और सर्वर पर छवि अपलोड करें

मेरे दृष्टिकोण में मैंने org.apache.http.entity.mime.MultipartEntity का उपयोग किया और छवि फ़ाइल नाम को FileBody के रूप में जोड़ा

entity.addPart("image_" + photo_count, new FileBody(
                        new File(failed.getFilenames()[i])));

फिर MultiPartEntity को HttpPost पर पास करें। मैंने पूर्ण कोड पोस्ट नहीं किया है क्योंकि इसमें आपके प्रश्न से असंबंधित टिप्पणियों और कोड का भार है। इमेज को फाइलबॉडी के रूप में पास करके स्टैंड php फाइल हैंडलिंग कोड (नीचे देखें) का उपयोग करके इमेज प्राप्त करना संभव है।

  if ((!empty($_FILES[$im])) && ($_FILES[$im]['error'] == 0)) {
              $newname = dirname(__FILE__) . '/../photo/' . $campaign . '/' . $fn;
              if (!file_exists($newname)) {
                  if (move_uploaded_file($_FILES[$im]['tmp_name'], $newname)) {
                      //$resp = "The file " . $fn . " has been uploaded";
                      //printf("%s", $resp);
                  } else {
                    $error = $error + 1;      
                  } 
              }else{
                //image file already exists
                $error = $error + 1;
              }
          } else {
              $error = $error +1;
          }

मेरे उद्देश्य के लिए उपरोक्त कोड लूप में था क्योंकि मैं कई छवियों से निपट रहा था

$im = 'image_' . $i;

इकाई में छवि के नाम को संदर्भित करता है।

संक्षिप्त पोस्ट के लिए क्षमा करें, मुझे समय के लिए जल्दी किया गया है।

इस कारण का उल्लेख करना भूल गया कि मैंने बेस 64 स्ट्रिंग दृष्टिकोण का उपयोग क्यों नहीं किया है, यह उस छवि के आकार को सीमित करता है जिसे आप भेज सकते हैं। इकाई में फाइलबॉडी दृष्टिकोण मुझे मिला सबसे अच्छा तरीका था।

आप स्ट्रिंग्स का उपयोग करके पास कर सकते हैं:

entity.addPart("address", new StringBody(failed[0].getAddress()));

HttpClient client = new DefaultHttpClient();
HttpConnectionParams.setConnectionTimeout(client.getParams(), 20000); // Timeout

MultipartEntity entity = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE);
entity.addPart("address", new StringBody("my address example"));
entity.addPart("image_0", new FileBody(new File("filename of image")));

HttpPost post = new HttpPost("server address");
post.setEntity(entity);

HttpResponse response  = client.execute(post);


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. फैंटम रीड कैसे तैयार करें?

  2. एसक्यूएल अद्यतन एक फ़ील्ड में सभी मानों को संलग्न स्ट्रिंग के साथ CONCAT काम नहीं कर रहा है

  3. इसे मैसकल में कैसे हल करें (#1242 - सबक्वेरी 1 पंक्ति से अधिक लौटाता है)?

  4. MySQL पूरी तरह से व्यू क्वेरी टेक्स्ट को रिफॉर्मेट क्यों करता है?

  5. mysql एक क्षेत्र में विशेष वर्ण की घटनाओं की गणना करता है