Giter Site home page Giter Site logo

542154968 / gethfmask Goto Github PK

View Code? Open in Web Editor NEW
22.0 22.0 6.0 353 KB

通过Nodejs直接请求合肥医保领取口罩的API,帮助快速预约口罩,请勿高频请求,口罩是限量的,一人一段时间只能买一次。

JavaScript 100.00%

gethfmask's People

Contributors

542154968 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

gethfmask's Issues

验证码问题

16点55分跑起来,10秒一次,验证码始终不变,提示尚未开始。17点开始后,提示验证码错误。关闭重新跑也是验证码错误。

您的请求过于频繁,请稍等异常

自己实现的C#版本,一直报请求过于频繁错误。用wireShake抓包的通讯如下。


GET /ncms/mask/captcha HTTP/1.1
Accept-Language: zh-CN,zh;q=0.9
X-Requested-With: XMLHttpRequest
Accept: application/json, text/javascript, */*; q=0.01
Content-Type: application/json;charset=UTF-8
User-Agent: Mozilla/5.0 (Linux; U; Android 2.3.6; zh-cn; GT-S5660 Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 MicroMessenger/4.5.255
Host: kzgm.bbshjz.cn:8000
Connection: Keep-Alive

HTTP/1.1 200 OK
Server: nginx
Date: Mon, 02 Mar 2020 14:03:09 GMT
Content-Type: application/json;charset=UTF-8
Content-Length: 2439
Connection: keep-alive
Set-Cookie: JSESSIONID=MjliYTdiMTQtYjg2MS00YTY3LWJkMDMtMTliOWY2OWMzMWM5; path=/ncms; HttpOnly
X-Protected-By: OpenRASP
X-Request-ID: 4efd1650f4e541f1869772f98d151f1f

/9j/4AAQSkZJRgABAgAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0a
HBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIy
MjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCAAlAFYDASIA
AhEBAxEB/8QAHwAAAQUBAQEBAQAAAAAAAAAAAAACAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA
AAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3
ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm
p6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA
AwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx
BhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK
U1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3
uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD0ee5a
OTYI3PG4EAYPrn0Hv/ku87zVAX5d/AJ5wfwPpyDmmTyMXKoQsiMCobo2R6+vUfn+DBFB5DSkFEbG
9Rxjnkc+/wCPpTsrGJD5jQzmOYOYlxlkc/Ln6Y/lVlpIhGsondA/bcD/ADzjHtVO8mttLjluLpU2
DGBtGX7YUevQ/n2wRFYX63bmO701LQNHvRt6sCPQ4wVPPTr19KbsBrx/LJInbO4fQ/8A1waiUrEq
zIGMcmMr/dz0x/L8vSue1DW9V0pZriHw8s9lBHua5S8RAwABJ24zwcj+XWtLS9WSfw9bXt9CLRZI
Q7K7blCYyCWxjlcH2z7VN9bFunJLmLxuIpQVeFyRyFKbifwH5VLET5Z2xyL3HmNnP6nFclb+Lrl4
Le6uNDlh0maUIt89yoKgnCO69VB4yScYPGcgHoLm61C1kCxWTXWVJ4cKBj39eRxj+XJo9hzpyh8R
caVGUh1YL3P90++Onrnp70iz7XRWZWR+Fcdz/n/PpmafqgnuJoZ4zZ3S/MUc7lZc+vHTPt+POJ2Z
jIEjMcjZwX3dR2Jx1I9fX8CWlcg0Gcox3AlT0KgnH1/z/wDXKije5YEsIWGccMR04PailYBZ0ZpY
sMBnKkEZyCM/0qFUjNw0RVEyBuVXxnr0xj8j6/ncLAMATyelVbtBu3scKUI6Z5HI4zzxmmn0EYXi
JLhIIgJQsUE6SF2UEIM4DY7gbhwB+FMs59usQWdvfyahFMjeck77whAOGDDpnp/jkGtbyjvwWIA5
AJyvXOMcejccdBRFFbxMpt4LfyXID+RGEbd/Dnn/ADk1TQramF4zbytITTbNhHd6jcraKBMVypIJ
OOpGCFPb5/pWnf27Hw9c6dbQhCtlJbQpuyD8u1Rknj7p5PTqTV+eCCYpI0EU0sWSkso+aLPU8jIz
gdOD9KasUsk5KZi4z9/dlhkdT2HQ1KV7tmvtLJJdNThLy/sb74eWlha3cc2oXMcFstusnz+YrqAC
vYYUjJ46Y613d9d2wQWl1eG2aVdyTRNs4BHQ9v8ACoo9FtEunvo7K3W4Zt4lMCiTJHJyOhyT9ec1
L9miuo9lwsTogHBwfLK5654PfmlbuXVqRlpFdW/v/wCGMvS1gi8QXawXbXURgVmuGO5lbI439x39
OOela4EaoUnQSRqcIwOcAjj8/Xpn0xUYSOxmQCCKFMlj5ShQ2AcYHrzj8qdPalHIjYKsnUHoeenp
n0/pjmkrGLD5LZdzLN5TYAKsBz+B5/8ArUU6KWSRysRi8xMhi2RuGeuMdf8AE+tFP1EWNhE5jJBj
cFsYxggj/H9KRozKstu7lgVBDEdM/T3FFFRcZC4w0UuTuaQRtjjJBIz+WRj39qiiG6F9wU+VGpPH
3gRn8OMDP55ooq1sIsNb+WIkWRiM7VLdV4J4Iwe3+ehpW1zho4ggG5+SOxPcelFFEdU7gXFlmR7g
F1dYsNyvJGM44qSHy7mESmMAsSeuSD04PboKKKl7XAYLYNvjQhUVtu1huGCAfr19D2pLafziLeRA
2IwxY856dvxooprVMCqtr5sggLjKgnft5wDtx+lFFFDm1sB//9k=

GET /ncms/mask/pharmacy-stock?code=11183&app_id=app_weixin&timestamp=1583186586&version=1&sign=cc604b36205857e4dbcf5410c192ab12 HTTP/1.1
Accept-Language: zh-CN,zh;q=0.9
X-Requested-With: XMLHttpRequest
Cookie: JSESSIONID=MjliYTdiMTQtYjg2MS00YTY3LWJkMDMtMTliOWY2OWMzMWM5
Accept: application/json, text/javascript, */*; q=0.01
Content-Type: application/json;charset=UTF-8
User-Agent: Mozilla/5.0 (Linux; U; Android 2.3.6; zh-cn; GT-S5660 Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 MicroMessenger/4.5.255
Host: kzgm.bbshjz.cn:8000

HTTP/1.1 200 OK
Server: nginx
Date: Mon, 02 Mar 2020 14:03:10 GMT
Content-Type: application/json;charset=UTF-8
Transfer-Encoding: chunked
Connection: keep-alive
X-Protected-By: OpenRASP
X-Request-ID: 9506691718184e20b0732ec577383c52

{"msg":"[{\"remain\":0,\"text\":\"9:00-13:00/剩余:0个\",\"value\":\"9:00-13:00\"},{\"remain\":0,\"text\":\"13:00-17:00/剩余:0个\",\"value\":\"13:00-17:00\"}]","succeed":true,"status":1}

POST /ncms/mask/book?app_id=app_weixin&timestamp=1583186588&version=1&sign=d4d9d14fcb2670f54ebe8eb9922cb5ea HTTP/1.1
Accept-Language: zh-CN,zh;q=0.9
X-Requested-With: XMLHttpRequest
Cookie: JSESSIONID=MjliYTdiMTQtYjg2MS00YTY3LWJkMDMtMTliOWY2OWMzMWM5
Accept: application/json, text/javascript, */*; q=0.01
Content-Type: application/json;charset=UTF-8
User-Agent: Mozilla/5.0 (Linux; U; Android 2.3.6; zh-cn; GT-S5660 Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 MicroMessenger/4.5.255
Host: kzgm.bbshjz.cn:8000
Transfer-Encoding: chunked

{"name":"李四","cardNo":"343245194502050567","phone":"13966278665","reservationNumber":"5","pharmacyName":"国胜大药房坝下路店","pharmacyCode":"11183","hash":"0871cecaf4d3abb667e82d1c5ea7e6e3","pharmacyPhase":"9:00-13:00","pharmacyPhaseName":"9:00-13:00/剩余:0个","captcha":"6703","timestamp":"1583186558476"}HTTP/1.1 200 OK
Server: nginx
Date: Mon, 02 Mar 2020 14:03:12 GMT
Content-Type: application/json;charset=UTF-8
Transfer-Encoding: chunked
Connection: keep-alive
X-Protected-By: OpenRASP
X-Request-ID: d7b713dfe0224d7183da3459b88e2ab6

{"msg":"您的请求过于频繁,请稍等","succeed":false,"status":500}

一点代码上的疑问

感谢楼主的奉献,试着用c#实现了一遍,学到很多。
有些疑问想请教一下。
第一点是common\requestForm.js这里的函数虽然导出了,好像并没有用到,是不是我哪里看错了,如果这里没用到这个函数,那么content-length是node自行管理的么?
第二点是 index.js中
var date = String(new Date().getTime() - config.dateDifference); sendData.hash = hex_md5(date + 'c7c7405208624ed90976f0672c09b884') sendData.pharmacyPhase = maskObj.value; sendData.pharmacyPhaseName = maskObj.text; sendData.timestamp = date

  1. date变量这里为啥没有取前10位;
  2. 'c7c7405208624ed90976f0672c09b884'又是啥
  3. sendData中好像并没有定义timestamp 和hash ,这里这两个参数是服务器验证必须的么,不提前定义js会自动创建么?

很久没写js,见谅我的姿势水平。

接入文档

你好~我想请问一下接入文档具体要如何操作呢

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.