有问题请教大家。
我的PC端接口是http://localhost:8080/dev-api/index
H5接口是 http://localhost:8080/dev-api/app/index
H5比PC多了一个 /app
到时候访问的时候,用户从网址访问时,怎么实现PC访问PC,H5访问H5?
判断下user-agent,从而区分不同的客户端。
这个我觉得让前端控制比较好。
前端在发请求的时候,可以判断出来当前是手机端还是PC端的。
function isMobile() {
let userAgentInfo = navigator.userAgent;
let Agents = ['Android', 'iPhone', 'SymbianOS', 'Windows Phone', 'iPad', 'iPod'];
let getArr = Agents.filter(i => userAgentInfo.includes(i));
return getArr.length ? true : false; //true就是手机端 反之则为移动端。
}
在前端处理下
function getBaseUrl() {
let userAgent = navigator.userAgent.toLowerCase();
// 用 test 匹配浏览器信息
if (/ipad|iphone|midp|rv:1.2.3.4|ucweb|android|windows ce|windows mobile/.test(userAgent)) {
console.log('移动端')
return 'http://localhost:8080/dev-api/app/'
} else {
console.log('pc端')
return 'http://localhost:8080/dev-api/'
}
}
// 使用
const baseUrl = getBaseUrl();
const url = baseUrl + 'index';