开发文档地址:开发文档地址
各编程语言SDK:
pythonSDK
phpSDK
javaSDK
goSDK
C#SDK
nodejsSDK
本文档用PHP语言,简要说明使用方式
首先下载php的SDK,放到extend目录下,修改各个文件的命名空间
其余的内容暂时不需要改
接下来创建model文件,放在common\model目录下,代码如下
<?php
namespace app\common\model;
use prints\Api\PrinterService;
use prints\Api\PrintService;
use prints\Config\YlyConfig;
use prints\Oauth\YlyOauthClient;
use think\Db;
use think\Exception;
class YLPrint
{
//调用打印机
public function callPrint($content)
{
$config = Db::name('print_config')->find();
$app_id = $config['app_id'];
$app_secret = $config['app_secret'];
$terminal_no = $config['terminal_no'];
$terminal_secret = $config['terminal_secret'];
$map[] = ['time','gt', time()];
//由于每日只有20次机会获取授权,因此要access_token存到表中,当过期时间大于当前时间,可以直接使用,否则就更新
$print_token = Db::name("print_token")->where($map)->find();
$config = new YlyConfig($app_id, $app_secret);
if ($print_token) {
$access_token = $print_token['access_token'];
} else {
try {
$client = new YlyOauthClient($config);
$token = $client->getToken();
Db::name("print_token")->where('id', 1)->update(['access_token' => $token->access_token, 'refresh_token' => $token->refresh_token,'expire_time'=>$token->expires_in, 'create_time' => date('Y-m-d H:i:s'), 'time' => time() + $token->expires_in]);
$access_token = $token->access_token;
} catch (Exception $e) {
$msg = $e->getMessage();
$msg = json_decode($msg);