json-server,跨域
启动json-serer
json-server --watch db.json
注意: db.json为json文件的名称,你自己的文件名叫什么,就启动对应的文件就可以了 启动json-server的时候,必须在你db.json所在的文件夹下进行启动
这样服务器就可以启动成功了,可以通过配置db.json文件,访问服务器里面的数据 访问地址:127.0.0.1:3300/student
使用json-sever实现增删改查
1.get 查找
http://localhost:3000/student(资源名)/id
2.post 添加
http://localhost:3000/student 不需要id ,会自动添加
3.put 修改 使用put修改会覆盖之前原有的数据,仅有修改后的数据
patch 部分修改 只会修改你要修改的数据,原有数据不变 4.delete 删除 只需要 传递要删除的端口号
http://localhost:3000/student(资源名)/id
跨域
协议(http,https),端口号,域名只要有一个不一样就是跨域
http 默认端口号80 https默认端口号443
jsonp跨域
前端发送请求 后端配合回调函数 好处:
-
javascript 兼容性比较好
-
不需要服务器支持,直接在本地运行
缺点:
-
它只支持GET请求而不支持POST等其它类型的HTTP请求
-
它只支持跨域HTTP请求这种情况,不能解决不同域的两个页面之间如何进行JavaScript调用的问题。
-
jsonp在调用失败的时候不会返回各种HTTP状态码。
-
安全性。万一假如提供jsonp的服务存在页面注入漏洞,即它返回的javascript的内容被人控制的。那么结果是什么?所有调用这个 jsonp的网站都会存在漏洞。于是无法把危险控制在一个域名下…所以在使用jsonp的时候必须要保证使用的jsonp服务必须是安全可信的
jsonp请求
前端
<input type="text"> <button>点击</button>
var btn = document.querySelector('button');
btn.onclick = function(){var val = document.querySelector('input').value;// 1. 创建script标签var scriptM = document.createElement('script');// 2. 添加src属性scriptM.src = `http://suggest.taobao.com/sug?code=utf-8&q=${val}&callback=success`;// 3. 添加到body标签中document.body.appendChild(scriptM);
}function success(data){console.log(data.result);
}
后端
$val = $_GET['cb'];
$data = '{"code":1,"msg":"ok","data":[{"uname":"jack","class":"java"},{"uname":"rose","class":"ui"},{"uname":"bob","class":"鸿蒙"},{"uname":"张三","class":"java"}]
}';
echo $val."(".$data.")"; // abc();
补充url 对象
-
URL的编码/解码方式
JavaScript 提供四个 URL 的编码/解码方法。
-
encodeURI()
-
encodeURIComponent()
-
decodeURI()
-
decodeURIComponent()
1.encodeURI()方法用于转码整个 URL。它的参数是一个字符串,代表整个 URL。它会将元字符和语义字符之外的字符,都进行转义
encodeURI('http://www.example.com/q=春节')
// "http://www.example.com/q=%E6%98%A5%E8%8A%82"
2。encodeURIComponent()
encodeURIComponent()方法用于转码 URL 的组成部分,会转码除了语义字符之外的所有字符,即元字符也会被转码。所以,它不能用于转码整个 URL。它接受一个参数,就是 URL 的片段
encodeURIComponent('春节')
// "%E6%98%A5%E8%8A%82"
encodeURIComponent('http://www.example.com/q=春节')
// "http%3A%2F%2Fwww.example.com%2Fq%3D%E6%98%A5%E8%8A%82" 1234
3.decodeURI()
decodeURI()方法用于整个 URL 的解码。它是encodeURI()方法的逆运算。它接受一个参数,就是转码后的 URL。
decodeURI('http://www.example.com/q=%E6%98%A5%E8%8A%82')
// "http://www.example.com/q=春节" 12
4。decodeURIComponent()
decodeURIComponent()用于URL 片段的解码。它是encodeURIComponent()方法的逆运算。它接受一个参数,就是转码后的 URL 片段
decodeURIComponent('%E6%98%A5%E8%8A%82') // "春节"
。
相关文章:
json-server,跨域
启动json-serer json-server --watch db.json 注意: db.json为json文件的名称,你自己的文件名叫什么,就启动对应的文件就可以了 启动json-server的时候,必须在你db.json所在的文件夹下进行启动 这样服务器就可以启动成功了&…...
【Conda】修复 Anaconda 安装并保留虚拟环境的详细指南
目录 流程图示1. 下载 Anaconda 安装程序2. 重命名现有的 Anaconda 安装目录Windows 操作系统Linux 操作系统 3. 运行新的 Anaconda 安装程序Windows 操作系统Linux 操作系统 4. 同步原环境使用 robocopy 命令(Windows)使用 rsync 命令(Linux…...
转行高薪 AI 产品经理,快速入门方法在此处
根据《2024年中国AI大模型场景探索及产业应用调研报告》,当前整体AI大模型行业仍然处于萌芽期,但市场规模增速较快。2023年我国AI大模型行业规模达到了147亿元,近三年复合增速高达114%。预计2024年,该市场规模将进一步增长至216亿…...
初识环境变量
初识环境变量 目录: 什么是环境变量常见的环境变量Linux中与环境变量的有关的命令如何获取环境变量环境变量的特点环境变量的作用 1.什么是环境变量 我们在Linux操作系统下,使用指令,比如ls,pwd,cd等等,可以直接使用,…...
成像基础 -- 景深计算
景深计算 景深(Depth of Field, DOF)指的是在摄影中,能够清晰成像的物体前后距离的范围。景深的大小取决于多个因素,包括焦距、光圈值、物距以及相机感光元件的尺寸。 1. 景深的主要参数 焦距( f f f)&a…...
Git中从dev分支恢复master分支
问题 需要从dev分支恢复master分支。之前搞错远程地址了,把master分支搞乱了,现在需要从dev分支恢复代码到master分支。 步骤 git checkout dev # 切换到 dev 分支 git branch -D master # 删除本地 master 分支 git checko…...
12.5 Linux_进程间通信_信号灯
概述 什么是信号灯: 信号灯也称为信号量,代表的是一类资源,其值表示系统中该资源的数量。 主要用途是实现进程、线程的同步。 什么是P/V操作: P操作就是申请资源,V操作就是释放操作。 信号灯的种类: …...
Linux——cp-mv-rm命令
cp命令 复制文件 cp test01.txt test02.txt 复制文件夹 cp -r hsy01 hsy02 mv命令 移动文件/文件夹 rm命令 删除文件 rm test.txt 删除文件夹(目录 rm -r hsy01 通配符 * 匹配任意内容 注意* 位置 强制删除-f root超级管理员...
上升点列
题目描述 在一个二维平面内,给定 n 个整数点 (xi,yi),此外你还可以自由添加 k 个整数点。 你在自由添加 k 个点后,还需要从 nk 个点中选出若干个整数点并组成一个序列,使得序列中任意相邻两点间的欧几里得距离恰好为 1 而且…...
刷题 链表
面试经典150题 - 链表 141. 环形链表 class Solution { public:bool hasCycle(ListNode *head) {ListNode* slow head, *fast head;while (fast ! nullptr && fast->next ! nullptr) {slow slow->next;fast fast->next->next;if (slow fast) {return…...
SQL 语法学习指南
目录 前言1. SQL 的基本概念1.1 SQL 的作用1.2 SQL 的特点 2. SQL 的基础语法2.1 数据查询 - SELECT 语句2.2 数据插入 - INSERT 语句2.3 数据更新 - UPDATE 语句2.4 数据删除 - DELETE 语句 3. SQL 的进阶语法3.1 聚合函数3.2 表连接 - JOIN3.3 子查询 4. SQL 学习建议4.1 多实…...
低代码可视化-uniapp商城首页小程序-代码生成器
在设计一个小程序的首页时,包含轮播图、通知栏和商品列表这三个元素是非常常见且有效的布局方式。这样的设计既能够吸引用户的注意力,又能够高效地展示信息和商品。 轮播组件 小程序首页幻灯片通常位于小程序的顶部或显著位置,通过滑动屏幕可…...
Vue3 富文本:WangEditor
wangEditor 开源 Web 富文本编辑器,开箱即用,配置简单 wangEditor 1. 安装依赖包 npm install wangeditor/editor-for-vuenext --save 2. 在引用页面加入如下代码 <template><div style"border: 1px solid #ccc"><Toolbar …...
Unity实现自定义图集(四)
以下内容是根据Unity 2020.1.0f1版本进行编写的 在之前的篇章中已经把自定义图集在编辑器上的使用,以及运行时所需的信息都准备好了,接下来就是魔改UGUI的Image组件,使其能够像Image那样运行时如果引用的资源有打自定义图集,则加载对应自定义图集的Texture。 1、思路 …...
k8s-pod的管理及优化设置
Pod是Kubernetes(k8s)中最小的资源管理组件,也是最小化运行容器化应用的资源对象。以下是对Pod的详细介绍: 一、Pod的基本概念 定义:Pod是Kubernetes中可以创建和管理的最小单元,是资源对象模型中由用户创…...
软件测试面试题大全
什么是软件测试? 答案:软件测试是一系列活动,旨在评估软件产品的质量,并验证它是否满足规定的需求。它包括执行程序或系统以识别任何缺陷、问题或错误,并确保软件产品符合用户期望。 软件测试的目的是什么?…...
SQL第16课挑战题
1. 美国各州的缩写应始终用大写。更新所有美国地址,包括供应商状态(Vendors表中的vend_state)和顾客状态(customers表中的cust_state),使它们均为大写。 2. 第15课挑战题1要求将自己添加到customers表中,现在删除自己,…...
Python3 爬虫 中间人爬虫
中间人(Man-in-the-Middle,MITM)攻击是指攻击者与通信的两端分别创建独立的联系,并交换其所收到的数据,使通信的两端认为其正在通过一个私密的连接与对方直接对话,但事实上整个会话都被攻击者完全控制。在中…...
Leetcode 50. Pow ( x , n ) 快速幂、取模 C++实现
问题:Leetcode 50. Pow ( x , n ) 实现 pow(x, n) ,即计算 x 的整数 n 次幂函数。 算法: 具体实现流程如下: 代码: class Solution { public:double myPow(double x, int N) {double ans 1;long long n N;if (n <…...
Java SE vs Java EE 与 JVM vs JDK vs JRE
Java SE(Java Platform,Standard Edition): Java 平台标准版,Java 编程语言的基础,它包含了支持 Java 应用程序开发和运行的核心类库以及虚拟机等核心组件。Java SE 可以用于构建桌面应用程序或简单的服务器应用程序。…...
League-Toolkit:英雄联盟智能工具集如何解决游戏决策与操作痛点并提升玩家体验
League-Toolkit:英雄联盟智能工具集如何解决游戏决策与操作痛点并提升玩家体验 【免费下载链接】League-Toolkit 兴趣使然的、简单易用的英雄联盟工具集。支持战绩查询、自动秒选等功能。基于 LCU API。 项目地址: https://gitcode.com/gh_mirrors/le/League-Tool…...
3个步骤在Docker容器中运行本地Windows ISO镜像:从配置到优化
3个步骤在Docker容器中运行本地Windows ISO镜像:从配置到优化 【免费下载链接】windows Windows inside a Docker container. 项目地址: https://gitcode.com/GitHub_Trending/wi/windows 问题导入:为什么需要本地ISO镜像? 在使用Doc…...
基于Dify和RAG技术的AI智能客服准确率优化实战
在构建基于Dify的AI智能客服时,我们常常会遇到一个核心挑战:模型给出的回答听起来头头是道,但仔细一核对,却发现它“一本正经地胡说八道”。例如,在一个医疗健康咨询场景中,用户询问“布洛芬和头孢可以一起…...
企业IT必看:教员工用小米手机配置Exchange邮箱的完整指南(含服务器参数详解)
企业IT标准化指南:小米手机Exchange邮箱配置与服务器参数解析 在移动办公成为标配的今天,企业邮箱的稳定接入直接关系到团队协作效率。根据2023年企业通信工具调研报告,超过67%的中大型企业仍在使用Exchange作为核心邮件系统,而员…...
Magisk Root技术实践指南:从决策评估到风险管控的完整解决方案
Magisk Root技术实践指南:从决策评估到风险管控的完整解决方案 【免费下载链接】Magisk The Magic Mask for Android 项目地址: https://gitcode.com/GitHub_Trending/ma/Magisk 一、决策评估:场景化应用与技术选型 1.1 设备Root需求分析矩阵 在…...
低成本DIY智能小车核心模块:用STM32和TB6612实现带编码器的定速巡航功能
低成本DIY智能小车核心模块:用STM32和TB6612实现带编码器的定速巡航功能 周末在工作室调试新做的智能小车时,突然意识到一个有趣的现象:当我们给电机设定固定转速后,实际速度总会因为电池电压波动、负载变化等因素产生偏差。这让…...
AI时代求职必懂的8大核心技术陷阱,最强就业指南
AI求职八股文大变革:不会这些新技术,下一个淘汰的就是你!(100个夺命真题解析)💀 警告: 如果你还在背那些“HashMap底层原理”和“三次握手四次挥手”,请立刻停止!AI面试官…...
【架构实战】数据库分库分表实战
一、为什么需要分库分表 当数据量超过单机数据库的承载能力时,分库分表成为必然选择: 单库数据量过亿:查询性能急剧下降单表数据量过大:索引效率降低,DML操作变慢连接数耗尽:数据库连接成为稀缺资源存储空间…...
Phi-4-Reasoning-Vision代码实例:TextIteratorStreamer实现思考过程智能分隔
Phi-4-Reasoning-Vision代码实例:TextIteratorStreamer实现思考过程智能分隔 1. 项目概述 Phi-4-Reasoning-Vision是基于微软Phi-4-reasoning-vision-15B多模态大模型开发的高性能推理工具,专为双卡RTX 4090环境优化。该工具严格遵循官方SYSTEM PROMPT…...
【ArUco GridBoard实战】从精度瓶颈到优化检测的完整指南
1. ArUco GridBoard的精度瓶颈与优化思路 在实际的计算机视觉项目中,我们经常会遇到标定板尺寸受限的情况。比如我之前做的一个工业检测项目,标定板尺寸被限制在3cm2cm以内。最初使用的是Charuco标定板,但很快就发现了一个严重问题࿱…...
