안드로이드 스튜디오 에서는 아래와 같이 작성 합니다.

	

// 먼저 volley 를 import 합니다.
import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.JsonObjectRequest;

// NODE 서버로 보내기 (보내는 함수 안에 아래 사용)

        // node 서버에 보낼 값 Json 형태로 만들기
	JSONObject requestJsonObject = new JSONObject();
	try {
		requestJsonObject.put("seq", seq);

	} catch(JSONException e) {
		e.printStackTrace();
	}

        // 2. RequestQueue 선언
        RequestQueue requestQueue = VolleyNetwork.getInstance(this).getRequestQueue();
    
        // 3. node 서버 IP와 받을 경로 수정 (http://192.168.20.123:3000/post)  하고, 
	JsonObjectRequest R_Object = new JsonObjectRequest(Request.Method.POST,"http://192.168.20.123:3000/receiv", requestJsonObject, new Response.Listener() {
	
		@Override
		public void onResponse(JSONObject response) {
			JSONArray J_JsonArray = new JSONArray();
			try {
				J_JsonArray = response.getJSONArray("results");
				JSONObject dataObj = J_JsonArray.getJSONObject(0);
	
				EditText etId = (EditText) findViewById(R.id.etId);
				EditText etName = (EditText) findViewById(R.id.etName);
	
				etId.setText(dataObj.getString("id"));
				etName.setText(dataObj.getString("name"));
	
			} catch(JSONException e) {
				e.printStackTrace();
			}
	
		}
	}, new Response.ErrorListener() {
	
		@Override
		public void onErrorResponse(VolleyError error) {
			Toast.makeText(context, "네트워크 연결 오류.", Toast.LENGTH_SHORT).show();
			Log.i("VolleyError", "Volley Error in receiv");
		}
	});
	requestQueue.add(R_Object);


// NODE 서버에서 받기 해당 함수 안에 아래 사용

        // 값 가져오기
	EditText etId = (EditText) findViewById(R.id.etId);
	EditText etName = (EditText) findViewById(R.id.etName);
	// 값 세팅
        Id = String.valueOf(etId.getText());
	Name = String.valueOf(etName.getText());

        // Json 형태로 만들기
	JSONObject requestJsonObject = new JSONObject();
	try {
		requestJsonObject.put("Id", Id);
		requestJsonObject.put("Name", Name);

	} catch(JSONException e) {
		e.printStackTrace();
	}

	final Context context = this;

        // volleynetwork 선언
	RequestQueue requestQueue = VolleyNetwork.getInstance(this).getRequestQueue();
	JsonObjectRequest S_Object = new JsonObjectRequest(Request.Method.POST, "http://192.168.20.123:3000/send", requestJsonObject, new Response.Listener() {
		@Override
		public void onResponse(JSONObject response) {
                    // 받아올 값이 없으므로 빈란
		}
	}, new Response.ErrorListener() {

		@Override
		public void onErrorResponse(VolleyError error) {
			Toast.makeText(context, "네트워크 연결 오류.", Toast.LENGTH_SHORT).show();
			Log.i("VolleyError", "Volley Error in send");
		}
	});
        // 실행
	requestQueue.add(S_Object);


위에서 넘긴 값을 Node 서버에서 아래와 같이 처리 합니다.(receiv 의 경우)


	
    // index.js
server.post('/receiv', function(req, res) {
	// receiv 에서 넘긴 seq 값 변수로 담기
        var id = req.body.seq;
	
	var sql = 'SELECT a.id, a.name FROM  table as a where  a.seq = '+seq;	
	dbPool.getConnection(function(err, dbConnection) {
        if(err){
		dbConnection.release();
		console.log('ERROR: CANNOT CONNECT Mysql');
		console.log(err);
		response.status(500).send('Internal Server Error');
        }else{
		dbConnection.query(sqlgetMemList, function(err, result, fields) {
        if(err) {
          dbConnection.release();
          console.log('ERROR: CANNOT QUERY Mysql');
          console.log(err);
          res.status(500).send('Internal Server Error');
        } else {
			
            dbConnection.release();
	    res.setHeader('Content-Type', 'application/json; charset=utf-8');
	    res.status(200);
	    res.json({"results": result});
        }
      });
    }
  });
});


서두 없이 작성해서 죄송합니다. 자세한 내용 원하시면 답변 부탁 드립니다.


+ Recent posts