开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 13124|回复: 49
收起左侧

[源码] 可视化设计uniapp+CCHTTP实现的get post 表单提交例子

[复制链接]
发表于 2022-9-3 11:41:32 | 显示全部楼层 |阅读模式   广东省中山市


[JavaScript] 纯文本查看 复制代码
.版本 2
.支持库 spec

.程序集 窗口程序集_启动窗口
.程序集变量 网站, CC网站

.子程序 __启动窗口_创建完毕

网站.创建 (, )
网站.zc接口 (&GET演示, “/api/get”, , , , , , , , , , , , #GET)  ' 只接收GET请求
网站.zc接口 (&POST演示, “/api/post”, , , , , , , , , , , , #POST)  ' 只接收POST请求
网站.zc接口 (&POST提交JSON演示, “/api/json”, , , , , , , , , , , , #POST)  ' 只接收POST请求
网站.zc接口 (&POST提交表单演示, “/api/form”, , , , , , , , , , , , #POST)  ' 只接收POST请求

网站.启动 (, 3333)


.子程序 GET演示, 逻辑型
.参数 指针, 整数型
.局部变量 接口, CC接口

取回接口 (指针, 接口)
调试输出 (“=======GET参数接收========”)

调试输出 (接口.取参数 (“title”))
调试输出 (接口.取所有参数 ().到JSON ())


接口.回复文本 (“DIYGW+易语言CCHTTP实现GET接口成功!” + 接口.取参数 (“title”), )
return (假)


.子程序 POST演示, 逻辑型
.参数 指针, 整数型
.局部变量 接口, CC接口
.局部变量 所有参数, json对象
.局部变量 返回结果, json对象

取回接口 (指针, 接口)
调试输出 (“=======POST参数接收========”)
' 下面这个代码可以获取到所有的参数
所有参数 = 接口.取所有参数 ()

调试输出 (所有参数.到JSON ())

' 下面这个方法和上面的类似,但是可以直接操作
' 接口.参数表 ()

' 例如这样操作:
接口.参数表 ().置文本 (“message”, “DIYGW+易语言CCHTTP实现POST接口成功!”, )

接口.参数表 ().置整数 (“code”, 200, )

接口.参数表 ().置文本 (“title2”, 接口.取参数 (“title”) + “加工了”, )

' 这种情况下,如果想获取GET参数可以这样:
调试输出 (接口.取GET参数 ())

接口.回复文本 (所有参数.到JSON (), )

' 自定义返回JSON结果
' 返回结果.置整数 (“code”, 200, )
' 返回结果.置文本 (“message”, “DIYGW+易语言CCHTTP实现POST接口成功!”, )
' 接口.回复JSON_自定义 (返回结果, )

return (假)


.子程序 POST提交JSON演示, 逻辑型
.参数 指针, 整数型
.局部变量 接口, CC接口
.局部变量 所有参数, json对象
.局部变量 数组, json数组

取回接口 (指针, 接口)
调试输出 (“=======JSON参数接收========”)

' 如果请求头中的 content-type 指定了类型为JSON传递,那么可以直接取JSON参数了
' JSON传递给了我们更多的可能,例如传递复杂的数据结构,传递数组

' 你可以这样的获取所有参数,这和前面的例子是一样的
所有参数 = 接口.取所有参数 ()
调试输出 (所有参数.到JSON ())

' 除了像前面那样回复数组,还可以直接回复JSON,下面演示了回复我们常用的JSON结构 (包含了状态码,是否成功,状态说明,数据等)
接口.回复JSON (“请求成功”, 0, 所有参数, 真)  ' 这里的默认键名是可以通过: 网站.配置_回复JSON格式 ()  进行修改的!

' 当然你也可以回复自定义的JSO你参数:
' 接口.回复JSON_文本 ()
' 接口.回复JSON_自定义 ()

' (注意!回复XXX 命令只能同时调用一个)

return (假)  ' 这里的真假与否会决定是否走后置全局接口,如果你不懂这是什么意思没有关系,等等看下我们后面的例子或视频教程即可!


.子程序 POST提交表单演示, 逻辑型
.参数 指针, 整数型
.局部变量 接口, CC接口

取回接口 (指针, 接口)

接口.置响应头 (“Access-Control-Allow-Origin”, “*”)
接口.置响应头 (“Access-Control-Allow-Methods”, “GET, POST, OPTIONS”)
接口.置响应头 (“Access-Control-Allow-Credentials”, “true”)
接口.置响应头 (“Access-Control-Max-Age”, “3600”)
接口.置响应头 (“Access-Control-Allow-Headers”, “content-type”)

调试输出 (“=======表单参数接收========”)
调试输出 (接口.取所有参数 ().到JSON ())
' 如果遇到模块无法解析的情况,你可以这样操作自己去写解析哦:
接口.取请求体 ()  ' 与下面一行功能一致,只是为了方便不同易友的习惯
接口.取原始请求数据 ()  ' 与上面一行功能一致,只是为了方便不同易友的习惯

接口.参数表 ().置整数 (“code”, 200, )
接口.参数表 ().置文本 (“msg”, “DIYGW+易语言CCHTTP实现POST表单成功!”, )

接口.回复文本 (接口.取所有参数 ().到JSON ())  ' 我们直接简单的写一下 当检测到请求头中有formdata字样,模块便会自动根据表单形式解析
return (假)  ' 这里的真假与否会决定是否走后置全局接口,如果你不懂这是什么意思没有关系,等等看下我们后面的例子或视频教程即可!


' 上传文件可以看专门的上传文件例子哦!


[HTML] 纯文本查看 复制代码
<template>
        <view class="container">
                <view class="diygw-form-item diygw-col-24">
                        <view class="title"> 搜索 </view>
                        <view class="input">
                                <input class="flex1" name="title" comfirm-type="done" type="text" v-model="title" placeholder="请输入提示信息" />
                        </view>
                </view>
                <view class="flex diygw-col-24">
                        <button @tap="navigateTo" data-type="dataApi" class="diygw-btn green flex1 margin-xs button-button-clz">按钮</button>
                </view>
                <view class="diygw-col-24">
                        {{ data }}
                </view>
                <view class="flex diygw-col-24">
                        <button @tap="navigateTo" data-type="page" data-url="/pages/post" class="diygw-btn green flex1 margin-xs button1-button-clz">跳转到POST接口页面</button>
                </view>
                <view class="flex diygw-col-24">
                        <button @tap="navigateTo" data-type="page" data-url="/pages/form" class="diygw-btn green flex1 margin-xs button2-button-clz">跳转到表单页面</button>
                </view>
                <view class="flex diygw-col-24">
                        <button @tap="navigateTo" data-type="page" data-url="/pages/json" class="diygw-btn green flex1 margin-xs button3-button-clz">跳转到JSON提交</button>
                </view>
                <view @tap="navigateTo" data-type="page" data-url="/pages/post" class="diygw-col-24"> 跳转到POST接口页面 </view>
                <view class="clearfix"></view>
        </view>
</template>

<script>
        export default {
                data() {
                        return {
                                //用户全局信息
                                userInfo: {},
                                data: `DIYGW+易语言CCHTTP实现GET接口成功!`,
                                title: ''
                        };
                },
                onShow() {
                        this.setCurrentPage(this);
                },
                onLoad(option) {
                        this.setCurrentPage(this);
                        if (option) {
                                this.setData({
                                        globalOption: this.getOption(option)
                                });
                        }

                        this.init();
                },
                methods: {
                        async init() {
                                await this.dataApi();
                        },
                        // GET接口 API请求方法
                        async dataApi() {
                                let data = await this.$http.get(
                                        '/api/get',
                                        {
                                                title: this.title
                                        },
                                        {},
                                        'json'
                                );
                                this.data = data;
                        }
                }
        };
</script>






本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

点评

感谢分享,   广东省佛山市  发表于 2022-9-5 23:06

评分

参与人数 6好评 +5 精币 +10 收起 理由
q132130 + 1 不知道为啥我总感觉这是个广告!!!
飞宇 + 1 + 1 CC + DIY 项目已完成 感谢大佬指点
llxx123 + 1 + 2 支持开源~!感谢分享
小神05112 + 1 如果你的网站东西免费用。早就遍地开花了
冰点 + 1 + 3 感谢发布原创作品,精易因你更精彩!
ku2017 + 1 + 3 新技能已get√

查看全部评分

本帖被以下淘专辑推荐:

结帖率:33% (2/6)

签到天数: 26 天

发表于 2024-2-18 20:01:08 | 显示全部楼层   广东省湛江市
支持开源~!感谢分享
回复 支持 反对

使用道具 举报

结帖率:20% (1/5)
发表于 2024-2-18 10:41:29 | 显示全部楼层   四川省德阳市
嗯,真是好东西,一定先收藏,在点赞。
回复 支持 反对

使用道具 举报

签到天数: 1 天

发表于 2024-1-28 01:46:13 | 显示全部楼层   广东省珠海市
感谢分享
回复 支持 反对

使用道具 举报

签到天数: 1 天

发表于 2024-1-28 01:45:20 | 显示全部楼层   广东省珠海市
太棒了,正好需要
回复 支持 反对

使用道具 举报

签到天数: 1 天

发表于 2024-1-27 15:04:02 | 显示全部楼层   辽宁省沈阳市
感谢分享,很给力!~
回复 支持 反对

使用道具 举报

签到天数: 10 天

发表于 2024-1-10 16:49:14 | 显示全部楼层   河南省洛阳市
可视化很方便
回复 支持 反对

使用道具 举报

签到天数: 6 天

发表于 2023-9-6 11:33:15 | 显示全部楼层   新疆维吾尔自治区昌吉回族自治州
感谢分享,学习下
回复 支持 反对

使用道具 举报

结帖率:90% (27/30)

签到天数: 6 天

发表于 2023-6-24 12:54:08 | 显示全部楼层   山东省济南市
多谢分享
回复 支持 反对

使用道具 举报

签到天数: 5 天

发表于 2023-6-8 13:30:50 | 显示全部楼层   湖北省武汉市
感谢分享
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 诚聘英才| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 800073686,邮箱:800073686@b.qq.com
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表