本鱼拟成立工作室承接项目开发/软件定制/云设施开发运维/办公设备技术支持等,如您有相关需求,欢迎来询 | ::博客文章推荐::

12306订票客户端 FOR .NET 演示项目 【1】项目概况

: 原创作品 木魚 8626℃ 4评论

本项目是由木鱼发起的一个基于.NET4.512306订票客户端。项目使用C#语言,使用FSLib.Network项目作为网络层访问库,主要用于演示目的。

主要原因是因为很多同学希望能借由12306练手,以此打开通往网络编程的大门……选择12306不是没有原因的,因为其复杂多变,又有错综复杂的逻辑关系,又十分具有现实意义,嗯。
12306订票助手.NET的代码由于历史和功能的原因,其体系过于庞大,并不适合(且目前也不能)开放源码。因此重新单独启动这个简单的项目,希望能给予想学习网络编程的同学以帮助。

本系列文章

  1. 12306订票客户端 FOR .NET 演示项目 【7】登录9年前 (2015-08-18)
  2. 12306订票客户端 FOR .NET 演示项目 【6】验证码输入9年前 (2015-08-12)
  3. 12306订票客户端 FOR .NET 演示项目 【5】获得余票数据9年前 (2015-06-10)
  4. 12306订票客户端 FOR .NET 演示项目 【4】界面框架&基础数据初始化9年前 (2015-06-08)
  5. 12306订票客户端 FOR .NET 演示项目 【3】流程分析和项目规划9年前 (2015-05-28)
  6. 12306订票客户端 FOR .NET 演示项目 【2】准备工具9年前 (2015-05-22)
  7. 12306订票客户端 FOR .NET 演示项目 【1】项目概况9年前 (2015-05-19)

FSLIB.NETWORK 网络库系列文章

  1. 12306订票助手.NET V10.6.1 发布8年前 (2016-09-01)
  2. 开源 FSLIB.NETWORK 库 2.2.0.08年前 (2016-08-02)
  3. FSLIB.NETWORK手册(1) · 基本概念和流程8年前 (2016-05-05)
  4. 原创FSLib.Network库更新 2.0.0 版8年前 (2016-04-05)
  5. 原创FSLib.Network库更新 1.6.0版(目前专注于HTTP的高性能高易用性网络库)9年前 (2015-12-13)
  6. 玩具系列:批量QQ群签到工具v2 (暂时屏蔽自定义位置功能)9年前 (2015-08-29)
  7. 玩具系列:批量QQ群签到工具(支持自定义位置)9年前 (2015-08-28)
  8. 12306订票助手.NET 8.0.8 发布9年前 (2015-08-21)
  9. 12306订票客户端 FOR .NET 演示项目 【7】登录9年前 (2015-08-18)
  10. 12306订票客户端 FOR .NET 演示项目 【6】验证码输入9年前 (2015-08-12)
  11. 12306订票客户端 FOR .NET 演示项目 【5】获得余票数据9年前 (2015-06-10)
  12. 原创FSLib.Network库发布 1.5 版9年前 (2015-06-09)
  13. 12306订票客户端 FOR .NET 演示项目 【4】界面框架&基础数据初始化9年前 (2015-06-08)
  14. 12306订票客户端 FOR .NET 演示项目 【3】流程分析和项目规划9年前 (2015-05-28)
  15. 12306订票客户端 FOR .NET 演示项目 【2】准备工具9年前 (2015-05-22)
  16. 12306订票客户端 FOR .NET 演示项目 【1】项目概况9年前 (2015-05-19)
  17. 原创FSLib.Network库发布 1.4 版9年前 (2015-05-08)
  18. 放一个抓取网页的信息监控小工具源码9年前 (2015-04-27)
  19. FSLib.Network网络库使用教程[2] 实例教程·美女们快到硬盘里来!10年前 (2015-01-30)
  20. FSLib.Network网络库使用教程[1] 基本使用10年前 (2015-01-19)
  21. 原创FSLib.Network库(目前专注于HTTP的高性能高易用性网络库)10年前 (2015-01-18)

实现目标

本项目仅包含基本的12306功能实现:

  • 登录
  • 查询
  • 提交订单

更详细进阶的功能将会在之后视情况是否加入。

技术概述

本项目出于演示&练习目的,所以将会使用较新的平台、工具以及技术。部分情况下可能因为较新所以无法被您手中的平台直接编译或使用。遇到此类情形时,请视需要改写再重新测试。

当前平台以及各项技能设定如下

  • 开发工具: Visual Studio 2015 RC
  • 目标平台: .NET FRAMEWORK 4.5
  • 网络访问库: FSLib.Network
  • 辅助库: FSLib.Extension
  • JSON解析库: JSON.NET
  • 执行模型: 单线程,使用异步完成所有操作
  • 解决方案为单项目方案,包含所有逻辑和数据对象以及界面

你可能需要对以下内容或相关技术较为了解才可以无障碍地继续:

  • HTTP协议相关知识
  • C#语言
  • .NET中网络相关操作的知识
  • HTML/Javascript的阅读分析能力
  • 遇到比较诡异的错误时脑洞大开的指数,指数越高对解决问题打破僵局越有利
  • Fiddler/Chrome/Firefox等浏览器或开发工具调试的能力

流程规划

将会按照以下流程逐步推进。由于我时间不固定,无法给出具体的时间安排,希望不会烂尾……
同时依据实际情况,可能会发生变更。对应的章节完成后,这里将会更新。

  • 项目概况
  • 准备篇(基础知识以及工具介绍)
  • 所有流程简介
  • 基础数据准备
  • 验证码输入
  • 登录
  • 查票
  • 准备提交订单
  • 提交订单

相关链接

本项目仅作为演示目的,禁止用于将全部或部分代码用于商业目的。
禁止转载。

喜欢 (20)
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(4)个小伙伴在吐槽
  1. 鱼大大,还有没有编写这类软件的相关书籍或资料呢?俺要潜心研究一下,求~推荐

    另一条小鱼2015-05-26 08:03 回复
    • 这个……主要是靠经验,没有专门著书的必要

      木魚2015-05-26 12:36 回复
  2. 支持! 晚上GIT下来开始研究

    那个同学2015-05-19 16:33 回复
    • 请看我头像~

      那个同学2015-05-19 22:43 回复