发送网络请求时,字符串按字符顺序拼接,之后用MD5加密,去后8位

+(NSString *)jsonTokenString:(NSDictionary *)dic

{

myDic = [NSMutableDictionary dictionary];

for (NSString *key in dic) {

//判断类型

if ([dic[key] isKindOfClass:[NSDictionary class]]) {

NSError *error = nil;

NSData *data = [NSJSONSerialization dataWithJSONObject:dic[key] options:NSJSONWritingPrettyPrinted error:&error];

NSString *dicString = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];

[myDic setValue:dicString forKey:key];

}

else

{

if ([dic[key] isKindOfClass:[NSArray class]]) {

//数组转化为字符串

NSError *error = nil;

NSData *data = [NSJSONSerialization dataWithJSONObject:dic[key] options:NSJSONWritingPrettyPrinted error:&error];

NSString *arrString = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];

[myDic setValue:arrString forKey:key];

}

else

{

if ([dic[key] isKindOfClass:[NSString class]]) {

[myDic setValue:dic[key] forKey:key];

}

else

{

[myDic setValue:[NSString stringWithFormat:@"%ld",[dic[key] integerValue]] forKey:key];

}

}

}

}

myArray = [[myDic allKeys] sortedArrayUsingSelector:@selector(compare:)];

NSString *string = @"";

for (NSString *key in myArray) {

string = [string stringByAppendingString:key];

string = [string stringByAppendingString:@"="];

string = [string stringByAppendingString:[myDic objectForKey:key]];

string = [string stringByAppendingString:@"&"];

}

string = [string stringByAppendingString:@"key="];

NSString *str = [[NSUserDefaults standardUserDefaults] objectForKey:@"userKey"];

string = [string stringByAppendingString:str];

string =  [[string MD5]substringFromIndex:24];

return string;

}

时间: 2025-01-15 18:14:15

发送网络请求时,字符串按字符顺序拼接,之后用MD5加密,去后8位的相关文章

虚拟化Xen平台中,Dom0和DomU之间发送网络数据时各个部分所运行时间

12年研究Xen的时候,曾经写过很多报告,当时考虑到保密,不能随便发布.现在Xen已经被KVM干的快不行了,发出来供大家参考. 关于xennet_start_xmit <-dev_hard_start_xmit调用函数(notify_remote_via_irq <-xennet_start_xmit)之间时间(0.085313)很长的解释:前端放入请求后,需要根据notify来表明,是否需要向后端发送事件请求.如果后端正在处理请求队列,就不需要向后端发送事件通知(notify=false).

IOS发送网络请求 心得

路线: 实例化URL (网络资源) 利用 URL 建立URLReques (网络请求) 默认是get 请求 对于post 请求 需要创建请求数据体          利用 URLConnection 发送网络请求 (建立连接) 获得结果 或者: (也就是:) URL Reques Connection  HTTP   中利用  URLReques 建立网络请求方式:  GET & POST              get 请求 是 从服务器中取            post 请求 是 往服务

Feign发送Get请求时,采用POJO对象传递参数的最终解决方案 Request method &#39;POST&#39; not supported (附带其余好几个坑)

yml: feign: httpclient: enabled: true properties: #feign feign.httpclient.enabled=true <!-- https://mvnrepository.com/artifact/io.github.openfeign/feign-httpclient --> <dependency> <groupId>io.github.openfeign</groupId> <artifac

Nodejs发送Post请求时出现socket hang up错误的解决办法

参考nodejs官网发送http post请求的方法,实现了一个模拟post提交的功能.实际使用时报socket hang up错误. 后来发现是请求头设置的问题,发送选项中需要加上headers字段信息(这个估计也和对方的服务器有关,对于不完成的post请求头,可能被丢弃了). 完整的代码如下(遇到类型问题的同学可以做个参考): var querystring = require('querystring') , http = require('http'); var data = query

在安卓主线程不能发送网络请求的解决办法

第一种方法: 在主线程中加入这段代码,强制在主线程执行网络请求 if (android.os.Build.VERSION.SDK_INT > 9) { StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build(); StrictMode.setThreadPolicy(policy); } 第二种方法: 利用安卓系统自带的异步执行,将网络请求的代码加入在里面 new Async

IE内核发送ajax请求时不会将url中的参数编码

有一次用户遇到创建文件,名称为中文时乱码的问题. 经调查,发现用户使用的是国产浏览器ie模式 抓取请求发现 IE: 键 值请求 POST /Handlers/CreateTxtFile.ashx?filename=阿斯达是.txt HTTP/1.1Accept */*Content-Type application/x-www-form-urlencoded; charset=UTF-8X-Requested-With XMLHttpRequestReferer http://mt.sogou.

python发送网络请求

1.使用urllib模块 get请求: res = urlopen(url) from urllib.request import urlopen url = 'http://www.nnzhp.cn' print(urlopen(url))#返回http.client.HTTPResponse object at 0x00000235BA25A160 print(urlopen(url).read().decode())#返回get到的页面的源代码 # decode是将base类型转为enco

axiso发送网络请求及python接收处理

安装$ npm install axios 1.发送get请求: axios.get("/api/v1.0/cars?id=132").then(function(res){ console.log(res) }).catch(function(err){ console.log(err) }); 2.发送post请求: let params = { id:4, ctime:'2019-03-1',name:"奔驰4" } //'Content-Type':'app

Hbuilder MUI里面使用java.net.URL发送网络请求,操作cookie

1. 引入所需网络请求类: var URL = plus.android.importClass("java.net.URL"); var URLConnection = plus.android.importClass("java.net.URLConnection"); var BufferedReader = plus.android.importClass("java.io.BufferedReader"); var InputStrea