往期彩票查询

1 篇文章 0 订阅
1 篇文章 0 订阅

最近在想开发一个什么样的android应用,作为我的第一个正式android小应用,后来就想到了以前买彩票的时候,总想查询一下自己选的这个号以前中过没有。可惜的是官网上面只有没法这样查询,于是决定就拿这个想法作为第一个正式的android小应用。

需求描述如下:

名称:我中了

描述:虽然名字是我中了,其实是个往期彩票查询应用,根据输入的彩票,给出在往期的中奖结果。供大家消遣和参考。

系统架构:

  1. 分为客户端和服务端架构
  2. 服务端采用REST框架为客户端提供查询功能,客户端是android应用,实现用户界面功能。
  3. 服务端的功能包括两大块:后台收集往期彩票数据和REST查询结构
  4. 客户端的功能主要是接收用户输入,然后调用服务端接口查询,给出结果。

技术选择:

  • 为什么选择REST而不是SOAP

选择REST是因为REST方便,适合资源类WEB服务,而SOAP实现的WEB服务比较适合操作类的。


  • 如何为REST提供安全性
API Key

当用户注册之后,会给用户一个API Key。这个API Key会附在每个请求的url后面,这个方式的缺点是如果某个人知道你的API Key之后,他就能伪装成那个用户了。 但是如果你的API请求是使用HTTPS(SSL)的方式,就可以避免你的API Key被别人获取了。


API Key + Secret Key签名

比上一种跟复杂的一种方式就是用一个secret key去签名每一刻API URL请求,Amazon Web Services就是使用这种方式。当用户注册完后, 你会给用户2个keys:API Key(比如:username)和secret key(比如password),API key会附在每个请求url上面,但是secret key
不会。secret key是用来签名每个请求的。通常会加上另外一个参数比如(Signature)。

Amazon会把所有的请求信息作为请求的参数,然后按照参数名排序,再按照secret key进行hash。这个hash的值会作为一个新的参数(Signature)附加到请求的url上。在server端做相同的事情,获得所有的参数(除了Signature),排序,用sercet key hash,如果这个值跟传过来的Signature参数的值相等的话,则认为这个请求是合法的。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以给你提供一个基本的双色球系统代码,你可以在此基础上进行修改和完善。代码如下: ```python import random # 生成红球号码 def generate_red_ball(): red_balls = [] while len(red_balls) < 6: num = random.randint(1, 33) if num not in red_balls: red_balls.append(num) return sorted(red_balls) # 生成蓝球号码 def generate_blue_ball(): return random.randint(1, 16) # 格式化输出号码 def format_balls(red_balls, blue_ball): red_balls_str = ' '.join([str(ball) for ball in red_balls]) return f"红球:{red_balls_str} 蓝球:{blue_ball}" # 查询往期开奖结果 def query_history(): # TODO: 实现查询往期开奖结果的功能 print("查询往期开奖结果") # 查询今日开奖结果 def query_result(): red_balls = generate_red_ball() blue_ball = generate_blue_ball() result = format_balls(red_balls, blue_ball) print(result) return result # 购买彩票 def buy_lottery(): # TODO: 实现购买彩票的功能 print("购买彩票") # 主函数 def main(): while True: choice = input("请选择功能:1.购买彩票 2.查询今日开奖结果 3.查询往期开奖结果 q.退出\n") if choice == '1': buy_lottery() elif choice == '2': query_result() elif choice == '3': query_history() elif choice == 'q': print("欢迎下次再来!") break else: print("输入有误,请重新输入!") if __name__ == '__main__': main() ``` 该代码实现了三个功能:购买彩票查询今日开奖结果和查询往期开奖结果。其中,生成红球号码和蓝球号码的函数分别为 `generate_red_ball()` 和 `generate_blue_ball()`,格式化输出号码的函数为 `format_balls()`。 在主函数中,使用一个 while 循环不断读取用户输入的选择,根据用户选择的不同,调用不同的函数实现对应的功能。其中,购买彩票查询往期开奖结果的功能需要你自己根据实际需求进行完善。 该代码只是一个简单的示例,你可以在此基础上进行修改和完善,实现更加丰富和复杂的双色球系统。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值