聚合数据iOS SDK 12306火车票查询订票演示示例

1,将聚合数据SDK(JuheApis.framework)添加到你的程序中来,SDK依赖的包包括:

2,在聚合SDK Framework的JHSDKAPIPath.h文件中找到快递查询接口宏,以及字典参数

/* 12306火车票查询订票 */
/**
@brief 2306火车票查询订票--1、车次查询
@param lname string 必填 车次名称,如:G4
@param ldtype string 非必填 返回数据的格式,xml或json,默认json
*/
#define kJHAPIS_LIFE_TRAIN_S @"juhe.apis.train.s" //1、车次查询

/**
@brief 12306火车票查询订票--2、站到站查询
@param start string 必填 出发站
@param end string 必填 终点站
@param traintype string 非必填 列车类型,G-高速动车 K-快速 T-空调特快 D-动车组 Z-直达特快 Q-其他
@param dtype string 非必填 返回数据的格式,xml或json,默认json
*/
#define kJHAPIS_LIFE_TRAIN_S2S @"juhe.apis.train.s2s" //2、站到站查询

/**
@brief 12306火车票查询订票--3、12306实时余票查询
@param dtype string 非必填 返回数据的格式,xml或json,默认json
@param from string 必填 出发站,如:上海虹桥
@param to string 必填 到达站,如:温州南
@param date string 非必填 出发日期,默认今日
@param tt string 非必填 车次类型,默认全部,如:G(高铁)、D(动车)、T(特快)、Z(直达)、K(快速)、Q(其他)
*/
#define kJHAPIS_LIFE_TRAIN_YP @"juhe.apis.train.yp" //3、12306实时余票查询

/**
@brief 12306火车票查询订票--4、12306订票①:查询车次
@param from string 必填 出发站名称:如上海虹桥
@param to string 必填 到达站名称:如温州南
@param date date 非必填 默认当天,格式:2014-07-11
@param tt string 非必填 车次类型,默认全部,如:G(高铁)、D(动车)、T(特快)、Z(直达)、K(快速)、Q(其他)
*/
#define kJHAPIS_LIFE_TRAIN_TICKET_CC @"juhe.apis.train.ticket.cc" //4、12306订票①:查询车次

/**
@brief 12306火车票查询订票--5、12306订票②:提交订单
@param name string 必填 乘客姓名
@param seat string 必填 座位类型:商务座:9,一等座:M,二等座:O,特等座:P,高级软卧:6,软卧:4,硬卧:3,软座:2,硬座:1,无座:0
@param mobile string 必填 乘客手机号码
@param idcard string 必填 乘客***号码
@param username string 必填 12306官网账号
@param password string 必填 12306官网密码
@param train_no string 必填 步骤①对应车次返回值
@param station_train_code string 必填 步骤①对应车次返回值
@param from_station_telecode string 必填 步骤①对应车次返回值
@param to_station_telecode string 必填 步骤①对应车次返回值
@param from_station_name string 必填 步骤①对应车次返回值
@param to_station_name string 必填 步骤①对应车次返回值
@param secretStr string 必填 步骤①对应车次返回值
*/
#define kJHAPIS_LIFE_TRAIN_TICKET_ORDER @"juhe.apis.train.ticket.order" //5、12306订票②:提交订单

3,快递查询接口在程序中调用方法(将ViewController.m改为.mm)

#import "ViewController.h"

#import <JuheApis/JuheAPI.h>
#import <JuheApis/JHOpenidSupplier.h>
#import <JuheApis/JHSDKAPIPath.h>

@interface ViewController ()
@end

@implementation ViewController

- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
[[JHOpenidSupplier shareSupplier] registerJuheAPIByOpenId:@"申请到的OpenId“];

UIButton* beginBtn=[UIButton buttonWithType:UIButtonTypeSystem];
beginBtn.frame=CGRectMake(20, 111, 280, 40);
[beginBtn setTitle:@"开始" forState:UIControlStateNormal];
[beginBtn setTitleColor:[UIColor darkGrayColor] forState:UIControlStateNormal];
[beginBtn addTarget:self action:@selector(doTestAction) forControlEvents:UIControlEventTouchUpInside];
[beginBtn setBackgroundImage:[UIImage imageNamed:@"button5"] forState:UIControlStateNormal];
[self.view addSubview:beginBtn];
}

- (void)doTestAction
{
/* 1、车次查询 */
[self test : kJHAPIS_LIFE_TRAIN_S parameters:@{@"name":@"G4" , @"dtype":@"json" }];

/* 2、站到站查询 */

[self test :kJHAPIS_LIFE_TRAIN_S2S parameters:@{@"start":@"上海虹桥" , @"end":@"苏州园区" }];

/* 3、12306实时余票查询 */
[self test :kJHAPIS_LIFE_TRAIN_YP parameters:@{@"from":@"上海虹桥" , @"to":@"温州南" }];

/* 4、12306订票①:查询车次 */
[self test :kJHAPIS_LIFE_TRAIN_TICKET_CC parameters:@{@"from":@"上海虹桥" , @"to":@"温州南" }];

/* 5、12306订票②:提交订单 */
[self test :kJHAPIS_LIFE_TRAIN_TICKET_ORDER parameters:@{@"name":@"乘客姓名" , @"seat":@"O" , @"mobile":@"乘客手机号码" , @"idcard":@"乘客***号码" , @"username":@"12306官网账号" ,@"password":@"12306官网密码" , @"train_no":@"步骤①对应车次返回值" , @"station_train_code":@"步骤①对应车次返回值" , @"from_station_telecod":@"步骤①对应车次返回值" } ] ;

}

- (void)test:(NSString *)path parameters:(NSDictionary *)parameters{

JuheAPI *juheapi = [JuheAPI shareJuheApi];
[juheapi executeWorkWithAPI:path
parameters:parameters
success:^(id responseObject){
if ([[parameters objectForKey:@"dtype"] isEqualToString:@"xml"]) {
NSLog(@"***xml*** \n %@", responseObject);
}else{
int error_code = [[responseObject objectForKey:@"error_code"] intValue];
if (!error_code) {
NSLog(@" %@", responseObject);
}else{
NSLog(@" %@", responseObject);
}
}

} failure:^(NSError *error) {
NSLog(@"error: %@",error.description);
}];
}

- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}

@end

4,12306火车票查询订票接口返回数据说明以及错误码说明

1、车次查询 
API :juhe.apis.train.s (宏 : kJHAPIS_LIFE_TRAIN_S)

返回字段:

2、站到站查询

API :juhe.apis.train.s2s (宏 : kJHAPIS_LIFE_TRAIN_S2S)

返回字段 :

3、12306实时余票查询
API :juhe.apis.train.yp (宏 : kJHAPIS_LIFE_TRAIN_YP )

返回字段 :

4、12306订票①:查询车次 
API :juhe.apis.train.ticket.cc (宏 : kJHAPIS_LIFE_TRAIN_TICKET_CC )

返回字段:

5、12306订票②:提交订单
API :juhe.apis.train.ticket.order (宏 : kJHAPIS_LIFE_TRAIN_TICKET_ORDER )

返回字段 :

6. 12306 火车票查询订票错误码

时间: 2024-12-28 21:27:22

聚合数据iOS SDK 12306火车票查询订票演示示例的相关文章

聚合数据Android SDK 12306火车票查询订票演示示例 编辑

1.聚合SDK是聚合数据平台,为移动开发者提供的免费数据接口.使用前请先到聚合平台(http://www.juhe.cn/)注册,申请相关数据. 2.下载聚合数据SDK,将开发包里的juhe_sdk_v_1_1.jar拷贝到libs根目录下,将libJuheSDK_v_1_0.so拷贝到libs\armeabi目录下,如图: 3. 根据接口说明文档找到以下方法: Java代码   /** * 获取车次 * * @param name *            车次 * @param jsonCa

聚合数据iOS SDK 快递查询演示示例

1,将聚合数据SDK(JuheApis.framework)添加到你的程序中来,SDK依赖的包包括: 2,在聚合SDK Framework的JHSDKAPIPath.h文件中找到快递查询接口宏,以及字典参数 /*** 常用快递 ***//**@brief 常用快递 -> 常用快递查询API@param com string 是 需要查询的快递公司编号@param no string 是 需要查询的订单号@param dtype string 否 返回数据的格式,xml或json,默认json*/

聚合数据Android SDK 全国加油站查询演示示例

1.聚合SDK是聚合数据平台,为移动开发者提供的免费数据接口.使用前请先到聚合平台(http://www.juhe.cn/)注册,申请相关数据. 2.下载聚合数据SDK,将开发包里的juhe_sdk_v_1_1.jar拷贝到libs根目录下,将libJuheSDK_v_1_0.so拷贝到libs\armeabi目录下,如图: 3. 根据接口说明文档找到以下方法: Java代码   /** * 按城市检索加油站 * * @param city 城市名 * @param page 页数 默认1 * 

聚合数据iOS SDK 全国加油站[实时油价]演示示例

1,将聚合数据SDK(JuheApis.framework)添加到你的程序中来,SDK依赖的包包括: 2,在聚合SDK Framework的JHSDKAPIPath.h文件中找到快递查询接口宏,以及字典参数 /*** 全国加油站[实时油价] ***//**@brief 全国加油站[实时油价] -> 按城市检索加油站@param city string 必填 城市名urlencode utf8;@param page int 非必填 页数,默认1*/#define kJHAPIS_LIFE_OIL

聚合数据iOS SDK 全国天气预报演示示例

1,将聚合数据SDK(JuheApis.framework)添加到你的程序中来,SDK依赖的包包括: 2,在聚合SDK Framework的JHSDKAPIPath.h文件中找到快递查询接口宏,以及字典参数 /*** 全国天气预报 ***/ /**@brief 全国天气 -> 根据城市名/id查询天气@param cityname string 必填 城市名或城市ID,如:"苏州"@param dtype string 必填 返回数据格式:json或xml,默认json@para

聚合数据iOS SDK 全国车辆违章 演示示例

1,将聚合数据SDK(JuheApis.framework)添加到你的程序中来,SDK依赖的包包括: 2,在聚合SDK Framework的JHSDKAPIPath.h文件中找到快递查询接口宏,以及字典参数 /**@brief 车辆违章查询--1.获取支持城市接口 */#define kJHAPIS_LIFE_WZ_CITYS @"juhe.apis.wz.citys" //1.获取支持城市接口 /**@brief 车辆违章查询--2.请求违章查询接口 */#define kJHAPI

聚合数据Android SDK 空气质量查询演示示例

1.聚合SDK是聚合数据平台,为移动开发者提供的免费数据接口.使用前请先到聚合平台(http://www.juhe.cn/)注册,申请相关数据. 2.下载聚合数据SDK,将开发包里的juhe_sdk_v_1_1.jar拷贝到libs根目录下,将libJuheSDK_v_1_0.so拷贝到libs\armeabi目录下,如图: 3. 根据接口说明文档找到以下方法: Java代码   /** * 城市空气质量 * * @param city *            城市名称的中文名称或拼音,如:上

聚合数据 iOS 项目开发实战:条码查询器

记录下,聚合数据 iOS 项目开发实战:条码查询器:视频地址:http://www.jikexueyuan.com/course/324.html 条码查询API:https://www.juhe.cn/docs/api/id/52 核心内容: 1.条码查询器结构分析.2.如何将聚合数据 SDK 添加到工程中.3.模型以及业务类的封装.4.控制器间的数据传递.5.tableView 以及 webView 的使用. 具体课时 1.条码查询器界面搭建 12:53 本课时通过分析条码查询的UI结构和业

聚合数据开发之全国天气预报查询Android程序

一.项目演示效果如下: 项目源代码下载地址: http://yunpan.cn/cZVWIieuFyK9I 访问密码 2eac 二.使用 聚合数据SDK: (1)聚合数据官网地址:http://www.juhe.cn/ (2)注册账号-创建一个新应用(在个人中心页面-数据中心-申请数据)–填入自己的应用–找到分类–天气预报-全国天气预报 (3)下载sdk (由于项目使用的是1点几的版本,所以请下载:包含在我的项目中!) (4)参考开发文档:http://www.juhe.cn/juhesdk/a