很多时候我们给与客户端在发布内容的时候,就很担心被客户输入恶意敏感词等信息,如若不慎还可能网站被封等;为了减少后台人工审核的成本,我们接入阿里云反文本垃圾。

第一步:在阿里云申请accessKeyId和accessKeySecret

第二步:下载阿里云的检测依赖

阿里云Sdk下载地址:

https://www.alibabacloud.com/help/zh/doc-detail/28440.htm?spm=a2c63.p38356.879954.6.600e905dEygP1j#reference-nh1-nkq-w2b

<?phpnamespace app\api\controller;
use think\Controller;
use think\Loader;class Textcheck extends Controller
{public function text(){Loader::import('aliyunSdk/green-php-sdk-sample/TextScanSample',EXTEND_PATH);$sems = new \TextScanSample();$content = $this->request->param('words');if(!$content){return json(['errid' => '0','message'=>'检测字符为空']);}$res = $sems->textScan($content);if($res['suggetion'] == 'pass'){return json(['errid' => '0','message'=>'阿里云文本安全审核通过']);}else{return json(['errid' => '1','message'=>'不通过,原因'.$res['scene']]);}}}

类库文件

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

<?php

/**

 * Created by PhpStorm.

 */

include_once 'aliyuncs/aliyun-php-sdk-core/Config.php';

use Green\Request\V20180509 as Green;

class TextScanSample {

    public function textScan($content){

        date_default_timezone_set("PRC");

        $config = config('ALIYUN_CONFIG');

        $accessKeyId $config['ackey'];

        $accessKeySecret $config['ack_secret'];

        $iClientProfile = DefaultProfile::getProfile("cn-shanghai"$accessKeyId$accessKeySecret);

        DefaultProfile::addEndpoint("cn-shanghai""cn-shanghai""Green""green.cn-shanghai.aliyuncs.com");

        $client new DefaultAcsClient($iClientProfile);

        $request new Green\TextScanRequest();

        $request->setMethod("POST");

        $request->setAcceptFormat("JSON");

        $task1 array('dataId' =>  uniqid(),

            'content' => $content

        );

        $request->setContent(json_encode(array("tasks" => array($task1),

            "scenes" => array("antispam"))));

        try {

            $response $client->getAcsResponse($request);

            if(200 == $response->code){

                $taskResults $response->data;

                foreach ($taskResults as $taskResult) {

                    if(200 == $taskResult->code){

                        $sceneResults $taskResult->results;

                        foreach ($sceneResults as $sceneResult) {

                            $scene $sceneResult->scene;

                            $suggestion $sceneResult->suggestion;

                            //根据scene和suggetion做相关的处理

                            //do something

                            $res['scene'] = $scene;

                            $res['suggetion'] = $suggestion;

                            return $res;

                        }

                    }else{

                        $scene"task process fail:" $response->code;

                        $res['scene'] = $scene;

                        $res['suggetion'] = 'block';

                        return $res;

                    }

                }

            }else{

                $scene"detect not success. code:" $response->code;

                $res['scene'] = $scene;

                $res['suggetion'] = 'block';

                return $res;

            }

        catch (Exception $e) {

            $res['scene'] = 'ok';

            $res['suggetion'] = $e;

            return $res;

        }

    }

}

ThinkPHP5 如何介入阿里云反文本垃圾敏感词过滤【附源码】相关推荐

  1. 小程序云开发实现登录与注册(附源码)

    小程序云开发实现登录与注册(附源码) 1. 看效果 2.wxss <view class="v1"><!-- v2父容器 子view使用绝对布局 -->&l ...

  2. 调用阿里云接口实现短信消息的发送源码——CSDN博客

    在调用阿里云接口之前首先需要购买接口,获得accessKeySecret,然后使用下列代码就可以直接调用了!! /** * @Title: TestPhoneVerification.java * @ ...

  3. spring boot文达云课堂的设计与实现毕业设计-附源码210908

    摘 要 信息化社会内需要与之针对性的信息获取途径,但是途径的扩展基本上为人们所努力的方向,由于站在的角度存在偏差,人们经常能够获得不同类型信息,这也是技术最为难以攻克的课题.针对云课堂教学等问题,对其 ...

  4. 【Android App】在线语音识别功能实现(使用云知声平台与WebSocket 超详细 附源码)

    需要源码和相关资源请点赞关注收藏后评论区留下QQ~~~ 一.在线语音识别 云知声的语音识别同样采用WebSocket接口,待识别的音频流支持MP3和PCM两种格式,对于在线语音识别来说,云知声使用JS ...

  5. 【Android App】实现在线语音合成功能(使用云知声平台和WebSocket 超详细 附源码)

    需要源码和Jar包请点赞关注收藏后评论区留下QQ~~~ 一.在线语音合成 虽然国产智能机大多集成了中文语音引擎,但是系统自带的语音工具无法满足商用要求,功能单一,所以势必引入第三方的语音引擎,依靠第三 ...

  6. 毕业设计——基于小程序云开发的校园二手交易平台(附源码)

    本系统基于微信小程序云开发,采用小程序原生框架,不需要后端开发,数据库和CMS云开发全帮你搞定,对后端开发能力薄弱的同学超友好的有木有,只要你学过HTML+CSS+JS就能实现所有功能. 一.功能介绍 ...

  7. kindeditor java ssm_easyUI整合富文本编辑器KindEditor详细教程(附源码)

    原因 在今年4月份的时候写过一篇关于easyui整合UEditor的文章Spring+SpringMVC+MyBatis+easyUI整合优化篇(六)easyUI与富文本编辑器UEditor整合,从那 ...

  8. 在线编程+视频面试,工程师“云招聘”的正确打开方式(附源码)

    春招开始了,今年的春招从以前的促膝而坐改为了视频连线.一些招聘平台也已推出"视频面试"功能,其中不少都是基于声网 Agora SDK 实现的.其实大部分职位的视频面试,都与视频通话 ...

  9. 转:鏖战双十一-阿里直播平台面临的技术挑战(webSocket, 敏感词过滤等很不错)...

    转自:http://www.infoq.com/cn/articles/alibaba-broadcast-platform-technology-challenges 鏖战双十一-阿里直播平台面临的 ...

最新文章

  1. Ubuntu下利用JDK的Keytool配置Tomcat7.0的SSL协议
  2. c语言调用dll实例 结构体传参,C# 调用Dll 传递字符串指针参(转)
  3. pythonselenium设置_selenium 怎样设置请求头?
  4. android studio设置Tab为四空格缩进
  5. 漫画算法:判断2的乘方
  6. 博客教程中百度网盘地址
  7. 在notepad++中配置java编译环境
  8. 详解Spring框架的AOP机制
  9. 从豌豆荚百度撕逼中学作文
  10. 女神节 | 那些奋斗在 IT 领域的“女神”们
  11. ubuntu之安装typora
  12. java读取、生成图片
  13. JS实现2048小游戏
  14. g120xa正反转参数_原创分享 | 西门子G120变频器的参数备份
  15. 百度生成短链接(Get请求方式)
  16. 2003sql php_Windows Server 2003下安装PHP +mssql2000
  17. java基于ssm房屋出售租赁管理系统
  18. 计算机应用情话,情话大全浪漫情话 最美的情话莫过于我也爱你
  19. 恒讯科技讲解:量子云计算是什么?
  20. python怎么用比图的方式判断菜单是灰色的还是黑色的,彩图对比

热门文章

  1. 隔墙有眼!Wi-Fi让你拥有透视术
  2. Mac 安装 miniconda
  3. 短信验证码存在的威胁
  4. 《花雕学AI》你不知道的AI 机器人:29个让你大开眼界的事实
  5. 好教程推荐系列:张小方的《高性能服务器开发》以及《30天自制C++服务器》
  6. 初学链表———单向链表创建
  7. Tomcat 调节缓存与内存参数
  8. 【Spark NLP】第 11 章:词嵌入
  9. EPPlus设置Excel条件格式
  10. js获取本机的外网/广域网ip地址