[Pas de pénétration de l'intranet IP du réseau public] Paiement de l'environnement sandbox Java Alipay, débogage à distance de l'interface SDK

Table des matières

1. Environnement de test

2. Configuration locale

3. Pénétration de l'Intranet

3.1 Télécharger et installer la pénétration intranet cpolar

3.2 Créer un tunnel

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

2023011001

Choisissez la dernière version du SDK

2023011002

Copiez les coordonnées maven et importez-les dans le fichier pom du projet Spring Boot

2023011003

2023011004

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.

2023011005

É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 :

2023011006

  • Valeur du paramètre appId :

2023011007

  • Les valeurs de privateKey et alipayPublicKey :

2023011008

2023011009

Après avoir configuré les valeurs des paramètres, nous démarrons ensuite le projet Springboot. Le Tomcat configuré ici utilise le port 8080.

2023011010

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 !

2023011011

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.

20230116162253

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创建

2023011012

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

2023011013

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.

20230116161201

202301161609

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保留

2023011015

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

2023011016

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.

2023011017

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更新

2023011018

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.

2023011019

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.

2023011020

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

2023011021

Sélectionnez le solde du compte test pour effectuer le paiement. Le mot de passe de paiement est visible sur la console.

2023011022

2023011023

paiement réussi

2023011024

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] 

Je suppose que tu aimes

Origine blog.csdn.net/weixin_74318097/article/details/132894836
conseillé
Classement