1.使用node http-server 起本地服务器 或者打开nginx 直接用nginx的默认页面也可以 (用下面的html文件替换nginx下html文件夹下的index.html)
http-server -p 8888
然后在浏览器打开 localhost:8888 打开页面
jQuery ajax 请求数据
<!DOCTYPE html> <html> <head> <title>node</title> </head> <body> <p id="text">jquery 请求数据</p> <script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script> <script> function get(){ $.ajax({ type:\'get\', //url: \'localhost: 8081/docs/\',//由于 服务启动的8888端口请求 8081端口 跨域,用nginx配置跨域 url: \'/docs/\', success:function(data){ $(\'#text\').html(data.data) }, error:function(err){ console.log(err); } }) } </script> <input type="hidden" id="dat3" value="3"> <button onClick="get()">请求数据</button> </body> </html>
2.由于 服务启动的8888/80端口请求 8081端口 跨域,用nginx配置跨域 nginx下载
server { listen 80; server_name localhost; #charset koi8-r; access_log logs/host.access.log; location / { root html; index index.html index.htm; } location ^~ /docs/ { proxy_pass http://localhost:8081; }
3.python接口文件 新建api.py 在bash下打开 python api.py
#!/usr/bin/python # -*- coding: utf-8 -*- import pymysql #导入 pymysql import urllib2 import json from urlparse import parse_qs from wsgiref.simple_server import make_server #打开数据库连接 def get_data(): db= pymysql.connect(host="localhost",user="root", password="123456",db="user",port=3306) # 使用cursor()方法获取操作游标 cur = db.cursor() #1.查询操作 # 编写sql 查询语句 user 对应我的表名 sql = "select * from users" # results = try: cur.execute(sql) #执行sql语句 results = cur.fetchall() #获取查询的所有记录 # print("id","name","password") #遍历结果 for row in results : id = row[0] name = row[1] password = row[2] # print(id,name,password) return results except Exception as e: raise e finally: db.close() #关闭连接 # 定义函数,参数是函数的两个参数,都是python本身定义的,默认就行了。 def application(environ, start_response): # 定义文件请求的类型和当前请求成功的code start_response(\'200 OK\', [(\'Content-Type\', \'text/html\')]) # environ是当前请求的所有数据,包括Header和URL,body,这里只涉及到get # 获取当前get请求的所有数据,返回是string类型 params = parse_qs(environ[\'QUERY_STRING\']) # 获取get中key为name的值 name = params.get(\'name\', [\'\'])[0] no = params.get(\'no\', [\'\'])[0] # 组成一个数组,数组中只有一个字典 # dic = {\'name\': \'name\', \'no\': \'no\'} #dic = get_data() dic = {\'data\':[ { \'a\' : [\'1\',\'2\'], \'b\' : 2, \'c\' : 3, \'d\' : 4, \'e\' : 5 } ]} # dic = get(); return [json.dumps(dic)] if __name__ == "__main__": url = \'127.0.0.1\' # 监听的请求url port = 8081 #监听的端口 只要是8081端口的都会返回数据,下面请求的url加了/docs/ 是nginx 匹配的需要 # httpd = make_server("0.0.0.0", port, application) httpd = make_server(url, port, application) print "serving http on port {0}...".format(str(port)) httpd.serve_forever()
配置ok 点击打开页面请求下 是不是 是不是请求到数据了
数据自定义 不用再求后端修改接口了。
有问题 欢迎来指点。