Table des matières
3.1 Télécharger et installer la pénétration intranet cpolar
4. Testez l'accès au réseau public
5. Configurez un nom de sous-domaine fixe de deuxième niveau
5.1 Réserver un nom de sous-domaine de deuxième niveau
5.2 Configurer le nom du sous-domaine de deuxième niveau
6. Utilisez des noms de sous-domaines fixes de deuxième niveau pour l'accès
1. Environnement de test
- Maven
- Botte à ressort
- Jdk1.8
2. Configuration locale
Obtenez le SDK Java de paiement Alipay. Pour les projets maven, vous pouvez choisir la version maven. Les projets java ordinaires peuvent être téléchargés à partir de GitHub. Ici, nous prenons maven comme exemple.
Adresse de téléchargement du SDK : Ant Financial Open Platform-Document Center
Choisissez la dernière version du SDK
Copiez les coordonnées maven et importez-les dans le fichier pom du projet Spring Boot
Ouvrez le document de développement : Mini Program Document-Alipay Document Center
Il s'agit simplement d'un test distinct de l'interface unifiée de l'ordre de recouvrement et de la page de paiement du site Web informatique.
Écrivez une interface pour faciliter la démonstration, créez une demande d'obtention et écrivez les informations de commande dans le code
//支付宝支付接口
@Controller
@RequestMapping("/pay")
public class AlipayTest {
private String serverUrl="https://openapi.alipaydev.com/gateway.do";
private String appId="2021000122601685";
private String privateKey="MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCCk5evhVhZL3kaWEN4ACD+xHoTfn0RqR7aoh2esSTHeca8bV77z4KYUYXH/76uG1ufeYX8CsI68fMTTIxTcvA1F/vctjCkyAS3fjo+DTPpQ5tZpXvJjbNhwXJwrNov/44Dsy727N+b6CAmz5C6vkNipTdekUlHO+6EJmNgMo+ZgYuoEvinP/1JLST6IpcYj/QjGtG8cYStDlx6C3P2Xk7Jv//rOsMbem6bO5v7zZU4E29lVn5mZucxyPqDfRgyz2H++EaNxDRRh6cdVxwntEImpn9Tap+Jv1tTEddI7pOnXqsOwy5lOEJ6r36g48OyXWOLum2x9bxZUs/6tg96VAgMBAAECggEAN7StlqTltHuJNQ2hBe9eQSjKRJmI3y8gQc5C6ZLLNSHXzselaEQHNd6mMjarPhg6zUV8wPH/wuvbsFOcF9tmMkFmxBiyjnGwV1pjYVmafMkpwh7jWkLk9UBLPTEbKN2+wqbuq08Pjc7et2cywRXjn8SrhQ6F47dZBspgkTDQ+PTpQ4unHjUeQVz55K2VitReDZuTNWPCj2DT7UHDaItFTVtG0oNd1mVtcmeS+4Na7WS/3dusUef2v8fpTuTYcNNcoDxYLunL90u3H5AQCnKIkk+hu6qWyuU6eJLj8QgOf82JqZcueFQxFI/8Ahlv/Y3yfdDm5RfrpsgQKBgQDXT9v9inqZPYgQqTOfZwgtU9WLcuO3e8RaKZ8NUl67Y+M4iKoYoms9ZdBFDPdj5BAygncZpTv4wrJ5Fj1gVeuBMWwmf34WkopQwXt+GbmNHPVFe12XzjkyJBGE3dOG3k0hAadWIw4O2Ipx0IqQFzQdiNCU1cSCQKBgQCbQH1260iD0PF/tNvYyq/YDe+I9+NrPgSe6f0gTOSFFo/Ni04T23vxCSdSt8mDlCULx71hxkr7uNYReUCI/ujXijlgyI/MOmd1AsDEfYceBXkEsOVjC4Zf4zYyvqqTArDdS6Hsn+Y3rwwEBa+hhTLvraCHZddbjbY7rlJttQKBgQCT2OiM/ywUUeY+2pJ5aO4FEnAg7hdKwSbKY3v+ynB8kugBq750tcUoGTQVohPaY/y8j1uIfN/pj/bCOTAP/mtrdodEd8ceN+dxXheZ8YcQgwQk7E+tvm4rMH1WGzJ/2KyiTu8AgF/Cd4791L3/NyNdwSLil9vrlwQKBgQCNBsvxllDMzKRTKWr7R0Lss9v/Q45mAHQaFttE2BRNgO0n/X7zMtEnZvU9go2e5JeyV8KEaqf6eTCbtnNnN0VXFwOo+zl7kP5fz5UMz1izUQgxdKD7sI208MmtZAvznhe47V1TDqYxq0KvNi4y64FAgwEuuMqiqFdSP6g4ecQKBgCF4KzJxe0n+intzTGKgt4a8sBDeyjUIPjU3/ujGXbYWzgmHUFtHOIgTMCs8kmkJlI+xgjqnCUNicIr0hfkjtRGTw6Tw0MqDFX1/EfDJp2spv2rQDMZyKCJZwZ2QyZNz2yYdm1ukzxbJI/conKUSsujdhKEZZhchv2MWl2moscwn";
private String alipayPublicKey="MIIBIjANBgkqhkiG9QEFAAOCAQ8AMIIBCgKCAQEAhsM/TnpIff7e39eqsCLQwI8fBQ+5lYcFjOrSw7p0ZsMETXXAS677MZTKw5JyHVTieg79708qvaYWZ58jYuViTqpBCnot+cEOnEZcfP3TxeKReAH379bHUVQOz7h3uH0eDcFmi3GjwPBB9lmcJdTI6qD/XObiWJID1e+XYzVgNKC+DXfJ2YN8NEuyRH5Zr862s3C6xd8BAYU1VW9ZfyAssQxILCOwQZ0qDOOq48GAhzDWwPG8oteJX7+lcH1TrnG01SmPiZqkHX6uUW2ye+fZkbW9qjtyujNnADIWNb/D1R2qgAcHsuOVV4hniRQIDAQAB";
//创建订单接口
@ResponseBody
@GetMapping("/create")
public String create(){
//创建连接
AlipayClient alipayClient = new DefaultAlipayClient(serverUrl,appId,privateKey,"json", "UTF-8",alipayPublicKey,"RSA2");
AlipayTradePagePayRequest request = new AlipayTradePagePayRequest();
//订单信息
JSONObject bizContent = new JSONObject();
bizContent.put("out_trade_no", "202100012260165");
bizContent.put("total_amount", 5.00);
bizContent.put("subject", "测试");
bizContent.put("product_code", "FAST_INSTANT_TRADE_PAY");
request.setBizContent(bizContent.toString());
AlipayTradePagePayResponse response = null;
try {
response = alipayClient.pageExecute(request);
} catch (AlipayApiException e) {
e.printStackTrace();
}
if(response.isSuccess()){
//成功
return response.getBody();
} else {
//失败
return "调用失败";
}
}
}
Frapper
Copie
Faites attention aux paramètres de configuration :
- La valeur du paramètre serverUrl :
- Valeur du paramètre appId :
- Les valeurs de privateKey et alipayPublicKey :
Après avoir configuré les valeurs des paramètres, nous démarrons ensuite le projet Springboot. Le Tomcat configuré ici utilise le port 8080.
Une fois le démarrage réussi, ouvrez le navigateur et accédez à l'adresse de l'interface que nous avons écrite ci-dessus : http://localhost:8080/pay/create . L'interface Alipay apparaît pour indiquer le succès. En cas d'échec, vérifiez les paramètres configurés !
3. Pénétration de l'Intranet
Le service ci-dessus qui appelle le SDK pour créer des ordres de paiement s'exécute localement. La limitation est que seuls les projets locaux peuvent appeler l'interface de paiement test. Si vous souhaitez l'appeler à distance, vous devez exposer le service au réseau public.
Cpolar est un outil de pénétration intranet qui prend en charge les protocoles http/https/tcp, ne limite pas le trafic, est simple à utiliser, ne nécessite pas d'adresse IP publique ni de routeur et peut facilement exposer les services au réseau public pour y accéder.
Site officiel de cpolar : cpolar - outil de pénétration intranet sécurisé
3.1 Télécharger et installer la pénétration intranet cpolar
Visitez le site officiel de cpolar, créez un compte, puis téléchargez et installez le client cpolar. Pour plus de détails, veuillez vous référer au didacticiel de documentation pour télécharger et installer.
3.2 Créer un tunnel
Une fois cpolar installé avec succès, nous accédons au port local 9200 sur le navigateur et nous connectons à l'interface utilisateur Web de Cpolar : http://localhost:9200 .
Cliquez sur Gestion des tunnels sur le tableau de bord de gauche - Créer un tunnel. Puisque le port 8080 est configuré dans Tomcat, nous devons créer un tunnel http pointant vers le port 8080 :
- Nom du tunnel : Personnalisable, attention à ne pas dupliquer le nom d'un tunnel existant
- Protocole : protocole http
- Adresse locale : 8080
- Type de nom de domaine : choisissez gratuitement un nom de domaine aléatoire
- Région : Sélectionnez la Chine en haut
Cliquez sur创建
Cliquez sur l'état du tableau de bord à gauche - liste des tunnels en ligne. Vous pouvez voir que le tunnel que vous venez de créer a généré une adresse réseau publique correspondante, un protocole http et un protocole https (évitant les étapes fastidieuses de configuration du certificat SSL). Copiez et réfléchissez-y
4. Testez l'accès au réseau public
Ouvrez le navigateur et entrez le code copié 公网地址+接口路径
pour y accéder. La page Alipay apparaît indiquant que l'accès est réussi.
5. Configurez un nom de sous-domaine fixe de deuxième niveau
Étant donné que le tunnel créé à l'aide de cpolar ci-dessus utilise une adresse de réseau public aléatoire, l'adresse changera dans les 24 heures, ce qui n'est pas propice à un accès à distance à long terme. Par conséquent, nous pouvons lui configurer un nom de sous-domaine de deuxième niveau. Cette adresse est une adresse fixe et ne changera pas de manière aléatoire [ps : cpolar.cn a été déposé]
Notez que vous devez mettre à niveau le package cpolar vers le package de base ou supérieur. [cpolar.cn a été enregistré]
5.1 Réserver un nom de sous-domaine de deuxième niveau
Visitez le site officiel de Cpolar , connectez-vous au backend du site officiel de cpolar, cliquez sur Réserver sur la gauche et recherchez le nom de sous-domaine réservé de deuxième niveau :
- Région : Sélectionnez Chine VIP
- Nom de domaine de deuxième niveau : personnalisable
- Description : Notes pouvant être personnalisées
Cliquez sur保留
Invitez que le nom de sous-domaine est réservé avec succès, copiez le nom de sous-domaine réservé de deuxième niveau
5.2 Configurer le nom du sous-domaine de deuxième niveau
Visitez http://127.0.0.1:9200/ , connectez-vous à l'interface de gestion de l'interface utilisateur Web cpolar, cliquez sur Tunnel Management - Tunnel List sur le tableau de bord de gauche, recherchez le tunnel de test de l'interface de paiement et cliquez sur Modifier à droite.
Modifiez les informations du tunnel et configurez le nom de sous-domaine de deuxième niveau réservé avec succès dans le tunnel.
- Type de nom de domaine : sélectionnez un nom de sous-domaine de deuxième niveau
- Sous-domaine : remplissez le nom du sous-domaine de deuxième niveau réservé avec succès
Cliquez sur更新
Après la mise à jour, ouvrez à nouveau la liste des tunnels en ligne. À ce stade, vous pouvez voir que le tunnel est devenu un nom de sous-domaine fixe de deuxième niveau. Copiez le nom de domaine.
6. Utilisez des noms de sous-domaines fixes de deuxième niveau pour l'accès
Ouvrez le navigateur et entrez la configuration que vous venez de configurer avec succès pour 固定二级子域名+接口路径
accéder. La page Alipay apparaît indiquant que l'accès est réussi.
Remplissez le nom du compte et le mot de passe de paiement pour tester, connectez-vous à la console avec le nom du compte et le mot de passe de paiement pour afficher
Sélectionnez le solde du compte test pour effectuer le paiement. Le mot de passe de paiement est visible sur la console.
paiement réussi
Réimprimé de l'article cpolar pole cloud : Paiement de l'environnement sandbox Java Alipay, débogage à distance de l'interface SDK [pénétration intranet]