淘宝提示词案例| 学习笔记

简介: 快速学习淘宝提示词案例。

开发者学堂课程【Ajax 前端开发入门与实战淘宝提示词案例】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/595/detail/8546


淘宝提示词案例

 

目录:

一、课程回顾:跨域的实现

二、淘宝提示词案例

三、淘宝提示词接口

四、测试

五、创建 taobao_sug.html

六、跨域的实现技术方案

七、编写代码

 

一、课程回顾:跨域的实现

XMLHttpRequest. 对象默认情况下是无法获取到非同源服务器下的数据。

那么怎么获取别人服务器的数据呢?

使用 XMLHttpRequest 是达不到的,只能另辟蹊径。

可以通过 script 标签,用 script 标签的 src. 属性引入一个外部文件,这个外部文件是不涉及到同源策略的影响的。

例如:

Kscript type="text/javascript"

src="http://www.lisi.com/test.js"></script>

跨域的本质其实就是服务器返回一个方法调用,这个方法是事先定义好的,而方法中的参数就是想要的数据。

A、访问外部 s 文件

B、访问外部 php,文件

c、动态创建 script 标签传入动态参数

D、前端界面决定方法名称

E、给 window 增加属性进行方法定义

小案例:淘宝提示词接口、百度提示词接口

 

二、淘宝提示词案例

例子:在网页打开 taobao.com

在搜索的位置搜索  java 就会看到相关的提示关键字出现在输入框的下边

关键字是从淘宝服务器库中获取的

 

三、淘宝提示词接口

地址

https://suggest.taoba9.com/sug

作用描述

获取淘宝提示词接口

请求类型

Get 请求

参数

q∶ 关键字

callback: 回调方法名称

返回数据格式

Jsonp 格式

 

四、测试

复制 https://suggest.taoba9.com/sug到预览器当中

需要两个参数 q 关键字和 callback 回调方法

插入相关参数

https://suggest.taoba9.com/sug?q=java&callback=haha

会发现开头是 haha 后面是括号

括号当中就是想要的数据是一个对象

如果把 haha 变为 hehe 会发现回调的方法从 haha 变成了 hehe 改为任意一个字符串函数名称都会有一个对应的变化。

 

五、创建 taobao_sug.html

输入代码

<script type="text/javascript">

window.onload = function()i

var btn = document.querySelector( "#btn");btn.onclick = function()i

var keywordValue = document.querySelector( " #keword" ).value;

console. log(keywordvalue);

};

};</script>

</ head>

<body>

<input type="text" id="keyword" placeholder="请输入相关的关键字">

<input type="button" id="btn" value="查询">

保存打开预览器

输入 www.zhangsan.com 打开调试工具

搜索123会发现 Console 发现错误,表示访问了一个空对象

回到代码 var keywordValue = document.querySelector( " #keword").value;这一行,找到 keyword 发现少了一个 y 填写上去

看到相关错误日志一定要找到错误日志,把关注点放在那

发现没有保存还会出现错误,保存之后刷新网页

请求 https://suggest.taoba9.com/sug?q=java&callback=haha

接口位置会发现无法请求 ajaxacross

 

六、跨域的实现技术方案

创建标签

var script = document.createElement( "script");

script.src = "https://suggest.taobao.com/sug?q="+keywordValue+"&callback=xixi";T

var head = document.queryselector("head");head.appendChild();

请求

https://suggest.taobao.com/sug?q="+keywordValue+"&callback=xixi地址就是方法的一个回调

打开预览器搜索 java

在 Consoie 下发现相关的数据

v0bject iresult: Array[10]] 团 vresult: Array[10]

0: Array [2]

: "java从入门到精通”1:"6888""

length: 2

_proto__: Array [0]v1: Array[2]

e: "java编程思想"1: "2121"

length: 2

_proto_: Array [0]2:Array [2]

0: "javascript"1:"35061"

length: 2

__proto__: Array[0]3:Array[2]

e: "java公路车”1: "1486"

length: 2

__proto_: Array [0]v4: Array[2]

: "java核心技术"1:"4044""

length: 2

_proto_: Array[0]

var liTag = "";

for(var i=o;i<data.result.length;i++){

var temp = data.result[ i];

var tempSug = temp[0];

liTag ="<li>"+tempSug+"</li>";

}

var ulTag-document.querySelector(“ul"); IulTag.innerHTML = liTag;

 

七、编写代码

var script = document.createElement( "script" );

script.src = "https://suggest.taobao.com/sug?q="+keywordValue+

"&callback=hehe";

window[ "hehe"] = function(data){

var liTag = "";

for(var i-o;i<data.result.length;i++){

var temp = data.result[i];

var tempSug = temp[0];

liTag +="<li>"+tempSug+"</li>";}

var ulTag = document.querySelector();;

var head=

document.querySelector( "head");head.appendchild(script);

};};/script>

相关文章
|
3月前
|
小程序 前端开发
微信综合购物商城小程序ui模板源码
微信电商小程序前端页面,综合购物商城ui界面模板。主要功能包含:电商主页、商品分类、购物车、购物车结算、我的个人中心管理、礼券、签到、新人专享、专栏、商品详情页、我的订单、我的余额、我的积分、我的收藏、我的地址、我的礼券等。这是一款非常齐全的电商小程序前端模板。
69 4
|
3月前
|
人工智能
好的官网设计---AI应答版面设计,会员提问窗口
好的官网设计---AI应答版面设计,会员提问窗口
|
5月前
|
小程序 JavaScript Java
购物|电商购物小程序|基于微信小程序的购物系统设计与实现(源码+数据库+文档)
购物|电商购物小程序|基于微信小程序的购物系统设计与实现(源码+数据库+文档)
63 0
|
5月前
|
小程序 容器
订水商城实战教程07-搜索
订水商城实战教程07-搜索
|
5月前
|
JavaScript 小程序 Java
基于Java的考编论坛网站的设计与实现(亮点:在线发布帖子、内容评论回复、购买二手物品、在线支付)
基于Java的考编论坛网站的设计与实现(亮点:在线发布帖子、内容评论回复、购买二手物品、在线支付)
42 0
基于Java的考编论坛网站的设计与实现(亮点:在线发布帖子、内容评论回复、购买二手物品、在线支付)
|
5月前
|
监控 搜索推荐 数据挖掘
淘宝关键词设置:技巧与实战指南
淘宝关键词设置:技巧与实战指南
|
11月前
|
NoSQL 前端开发 分布式数据库
102 云笔记案例(功能列表)
102 云笔记案例(功能列表)
50 0
|
SQL XML 前端开发
怎么做社区网站的首页帖子展示?
要进行首页帖子展示,就必须学会分页,而在创建分页之前,我们得先认识到,为什么要进行分页?一个大型网站的数据库将容纳大量的数据,而我们进行展示某部分数据时,为了保证浏览速度,不可能一次性地将所有数据进行传输,更何况,不是全部传输过去的数据第一时间就能有效利用,所以,只要每次将需要的数据传输过去就好,即使是后续需要的数据,那也是后面时间点需要完成的工作,为了做到这一点,必须对一个数据整体进行划分,合理地传输并展示给用户,其中,划分出来的每一部分可被称为一页数据,完成划分工作的就是分页操作。而分页操作在 spingboot 及 mybatis 的环境下,可被分为以下几种分页情况:
126 0
怎么做社区网站的首页帖子展示?
|
前端开发 API 图形学
元宇宙虚拟社区交友软件APP开发规则详情及源码示例
元宇宙虚拟社区交友软件可以使用开源框架搭建,如React Native,Unity或者Xamarin等,也可以使用现有的虚拟化平台如 OVH、River, RuXen, XSquaredClipse, Shenandoah Valley等。
|
前端开发 JavaScript API
谷粒学院(十一)课程最终发布 | 课程列表 | 阿里云视频点播服务 | 小节实现视频上传(三)
谷粒学院(十一)课程最终发布 | 课程列表 | 阿里云视频点播服务 | 小节实现视频上传(三)
谷粒学院(十一)课程最终发布 | 课程列表 | 阿里云视频点播服务 | 小节实现视频上传(三)
下一篇
无影云桌面