1. 一个停车场系统联网-黄岛区级平台测试环境

1.1. 接口文档

1.2. 测试联调步骤

1.2.1. 步骤一:配置参数,向测试接口发送API请求,例如心跳请求(uploadHeartbeat)

1.2.1.1. 测试环境接口地址

http://test_1park.xihaianparking.com:7788/api/v1/cp/

1.2.1.2. 测试环境平台公钥

config.set({ "test.keys.黄岛平台公钥": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC5uIIvWa/yZ3HhzMzLWOiHWf8Kp/zPOEbrul6QIK5ofumjbNE1x2A0c06V3rbxc5uhFVbItuWqzNfFsAtgBw0viJy5Xfh7OQVzy0mN+I4mHdzewNHPAW/2qL4b0LQQ25hlW7xr2UeTU1Uw+P/GPsj1HWvSFtJr6SKZ9OZDMdI5qwIDAQAB" });

1.2.1.3. 用户配置参数

优先使用本停车场的用户配置参数,如果还未申请到位,可以先使用以下测试用户配置:

config.set({ "用户.测试停车场.parkingCode": "370200240529zXPTTH" }); config.set({ "用户.测试停车场.accessID": "370200240529zXPTTH" }); config.set({ "用户.370200240529zXPTTH.name": "测试停车场" }); config.set({ "用户.370200240529zXPTTH.私钥": "MIICdwIBADANBgkqhkiG9w0BAQEFAASCAmEwggJdAgEAAoGBAKiNEz+jAxZeY4MhFekbkcF9/Inh5kwzwGe/biXqjIaerv2hQiGztPYdg6UWC3PUuRizJJxa5Fa7HwSIq3KiIr63kQWv/tKfAH/BxlidOXEmq6aHiTrR5Bv+5iMDJeZMvtOFGFzymK6CBG4k30vJJKJlHy4JoscSzvzGJxmko8zZAgMBAAECgYBDeO36rIvg2XomlQkLXvDzLzb4D0k8uf7MyVITtZf5j+5nM7Wgfirz1w7K+E8vWDmcjKIcQTplCdU54GgZpJQZdEzXaIKdxIVQdO2OWyhySopnldp4dTfn4/tAEAN5Xg8P85SV+1g8t+xckKH4Wox1unQgmCFDOGhTH2EAE/FXzQJBANWVFWqoHjrInE8o0dz+j1vDwnzXv7ZHdpBJTwFBVZ9OJRsxJmmQ+SZh1pW+0pYO5cKBLQd/BFEOuR9G/Mj7I2sCQQDKBoTfELfGsd92z6Z1EP8YiwhoO4YPL7yRvWjXyrFuBN2TzvCDSlDM9pfwkIiwq/A59GuBEpVWNokIqKJgcOXLAkEAkLX2UNGfycxqu+e4abfAgjhc6iF0L5iz6IcDFKKj1NAprAbdM+GaLjtUHRmxrSJi4iqLy+xvjEwheeOrGrGuCQJBAMjfYIAXNFO5CpMs9rqRssMpgqt4+9vfwCQ866EcpfzZk6Ni8JvqaZrSWdLVM0RPQWWulLHa02fMg8Z7PjCcMK8CQCACQ7/VPgxkn07EwlWJSqiWGToGWC6IL27ol8O9zMm0q41Pu6PyP9UkA6dEYyRLAkjY3q219TB++blFs94SMyc=" });

1.2.1.4. API调用范例——API调用请求 长啥样?

1.2.1.4.1. 使用curl命令发送POST请求调用API:uploadHeartbeat范例
curl "http://test_1park.xihaianparking.com:7788/api/v1/cp/uploadHeartbeat" --form "cipher=BxVDP8FgZKUXYBKtHhjbIeTxLyx/bgimtgr1LyC8g8z7m1ITSnCt3kGqJ92WkTpnesfr6PnM0f2kmJHwyuBiFz0Ai5K/xugoYvMAiQoQ3lsr963RXNcupH5lYFzUwx4MwqF+F2/b5dA1w4nKfsu6f4GQB2CSwfLHAqKQ5cSFsgJ0/AjYHHRccH4qi6VqhP1a2AnMjN719a5PPKSDjVgiZcWtZIqpQ3fXSi507muM84aJMCr0ImDx3+YduTA3I0vV2SMo+YphOckl7iT2IlbTOwS1fvr4qu09HbCXuc1nRh1WZ975T2G590ueIWwPlGJ+mCTcWWCj+mKAHIKR+rTs1w==" --form "sign=IZOC1fLCqwOpdKJWi8pRAVJL9e2gXzL07lv3rNT4BCjkhaI36QO3rZU4sVh38fL3oLeEn0mcrYmiIZC8oDI7iPBR8uZPn5lahLL3NBWmfOKO13lSf/PEMT0C1nfosbHuo6oSN0gwYHwbIfQvsjwQI9rlgMwE+m6f9CCMkscMlfg=" --form "accessID=370200240529zXPTTH"

注:--form,让 curl 可以模拟用户在网页上按下提交按钮提交一个form表单的行为。而这会导致 curl 根据 RFC 2388, 使Content-Type 采用 multi-part/form-data 向服务器递送数据(POST data)。(译自:this lets curl emulate a filled-in form in which a user has pressed the submit button. This causes curl to POST data using the Content-Type multi‐part/form-data according to RFC 2388.)

服务器返回:

{"msg":"操作成功","resultCode":"200","srvTime":"2022-03-29 02:22:40"}
1.2.1.4.2. 使用curl命令发送POST请求调用API:uploadPhoto,上传1x1像素jpg文件 范例
curl "http://test_1park.xihaianparking.com:7788/api/v1/cp/uploadPhoto" --form "cipher=boUj3R8mhKQDDdaoVMI/B2otOfFnmrYnTdbBWSYDdmc2Wg+vHuTM5u4D7GmsPF7gxEPC/zTZFC0zZhjym2dnRByosuCfi7xIa94QnqgKfNOkRrG+SR+matjxESDGYwcfuxAgUyNQruQjQ6eyyDngagTMvC7CFtdBA0QkeM21YHtsEJ0z+SI/b+CqsxLU3ymWO5td3GNYd6oMfHYxkG+TVdRsFnL1EqFLOVUkL2/gtv6T9/WShOFCQeGQVK7fomvoJXc5eEIGEmTjRIeKjo6OE5RylSaPXLZ/gTN6Qv06wmItAa2gpVVve90zZ+mxawgF01mMcusKLN1I+I8SpGuFiIXHUOK+Vh8gKf0RqCdgz1bYUxR4Op3bzo4YRS98oUheasYtDEmGEFoYo+/1Qp1wdo+vkM64XuA5GyNlUcKv27gisYPu9aDfqAkRIpyNBFeCx+lFLCjq/Ku2/4akAmUjtows3PxT8XwMOKxNVSlbfKnuOJTBXGkBR9zFU78JR+Bj" --form "sign=Mx3bA/+8iv2n6BswDfOpvlOrOxKcsVpgQsGata6S1RNl2kJyhFs2Ol+5FmaGKPhzvLhioEMWTi//YH7q7zoC4OORhcBcwzzJtyg+UdDq2vjaiXOjlYe+bs5FVWQEZpbCkUutmdbNX/J+cNoy3sQ6LnITNA+yJfk0KTMNUtPqeWU=" --form "accessID=370200240529zXPTTH" --form "file=/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCAABAAEDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD3+iiigD//2Q=="

注:

--form file=`curl https://upload.wikimedia.org/wikipedia/en/4/48/Blank.JPG | base64 -w 0`

服务器可能的返回:

{"resultCode":"200","msg":"操作成功"} //或者: { resultCode: '500', msg: '未找到入场记录' }

1.2.1.5. 查看测试环境后台log

http://help1park.xihaianparking.com:7171/plog/test-out.log

1.2.2. 步骤二:查看调用以上测试接口最终上报到青岛市级平台测试环境的调用结果

http://parking.qdznjt.com/apitest/index

登录accessID:12001682

登录parkingCode:370200240529zXPTTH

1.3. 问答


本文档为:

测试环境帮助文档

http://help1park.xihaianparking.com:7171/test.html

最后修订:2024-11-11T15:17:23+08:00