【IOS】IAP (内置购买) 服务器端代码

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

import java.io.OutputStreamWriter;

import java.net.HttpURLConnection;

import java.net.URL;

import javax.net.ssl.HttpsURLConnection;

import javax.transaction.SystemException;

import com.alibaba.fastjson.JSONObject;

public class ApplePayments {

private final static String _sandboxUriStr = "https://sandbox.itunes.apple.com/verifyReceipt";

//private final static String _productionUriStr = "https://buy.itunes.apple.com/verifyReceipt";

/**

* @param receipt 明码

* @throws SystemException

*/

public static void processPayment(final String receipt)

throws SystemException {

@SuppressWarnings("restriction")

final sun.misc.BASE64Encoder encoder = new sun.misc.BASE64Encoder();

final String receiptData = encoder.encode(receipt.getBytes());

final JSONObject object=new JSONObject();

object.put("receipt-data", receiptData);

        final String jsonData=object.toJSONString();

try {

final URL url = new URL(_sandboxUriStr);

final HttpURLConnection conn = (HttpsURLConnection) url

.openConnection();

conn.setRequestMethod("POST");

conn.setDoOutput(true);

conn.setRequestProperty("Content-Type", "application/json");

conn.setRequestProperty("Accept", "application/json");

final OutputStreamWriter wr = new OutputStreamWriter(

conn.getOutputStream());

wr.write(jsonData);

wr.flush();

// Get the response

final BufferedReader rd = new BufferedReader(new InputStreamReader(

conn.getInputStream()));

String line;

while ((line = rd.readLine()) != null) {

System.out.println(line);

}

wr.close();

rd.close();

} catch (IOException e) {

}

}

}

猜你喜欢

转载自hougechuanqi.iteye.com/blog/1915959