美文网首页springbootJava web
调用第三方接口实现照片美颜功能

调用第三方接口实现照片美颜功能

作者: 闲置的Programmer | 来源:发表于2019-06-28 20:42 被阅读0次

    1、找到一个合适的第三方平台,我们公司是用的相芯科技的美颜接口

    2、进入该公司后台系统,打开该公司的API文档


    image.png

    3、按照第三方平台的文档进行接口调用,首先获取一个永久签名,他们提供了有一个获取签名的命令行工具,下面是要执行的命令,输入之后会给你返回你所要的签名


    获取签名 命令行获取签名

    4、之后就可以在代码中去调用接口实现美颜了。阅读文档可以看到,调用美颜接口之前,需要先获取一个token,提供获取token的接口所要的参数就是我们的key和获取的签名

    image.png

    5、然后我们在用刚刚获取的token和所需要的图片入参,进行照片美颜。


    image.png

    图片是必须form-data类型的参数,接口是https类型,返回的参数可以在API文档中进行查看。

    6、美颜接口的参数是form-data的图片,如果是网络图片的话需要先保存在本地。然后通过访问本地路径的方式来进行传输,将图片保存在本地这种操作在服务器上也是可以操作的,比如在本地是F:\work,在服务器上就是 data/tomcat/faceimg,如果怕图片并发量大的话可以加上锁,美颜完后上传到分布式存储,就可以把本地的图片删掉了。

     // 删除指定文件夹下所有文件
            // param path 文件夹完整绝对路径
            public static boolean delAllFile(String path) {
                boolean flag = false;
                File file = new File(path);
                if (!file.exists()) {
                    return flag;
                }
                if (!file.isDirectory()) {
                    return flag;
                }
                String[] tempList = file.list();
                File temp = null;
                for (int i = 0; i < tempList.length; i++) {
                    if (path.endsWith(File.separator)) {
                        temp = new File(path + tempList[i]);
                    } else {
                        temp = new File(path + File.separator + tempList[i]);
                    }
                    if (temp.isFile()) {
                        temp.delete();
                    }
                    if (temp.isDirectory()) {
                        delAllFile(path + "/" + tempList[i]);// 先删除文件夹里面的文件
                        flag = true;
                    }
                }
                return flag;
            }
    
    

    相关文章

      网友评论

        本文标题:调用第三方接口实现照片美颜功能

        本文链接:https://www.haomeiwen.com/subject/yxqycctx.html