OpenResty 위챗 공중번호 얻기 access_token
그 다음은 OpenResty 자체가 http 요청을 하는 것은 비교적 번거로운 일이다. 다행히 봄이 형이 루아_를 썼다resty_http, Openresty에서 http 요청을 시작하는 것이 더 쉽습니다.나는 그중의 하나를 사용한다.https://github.com/pintsized/lua-resty-http
다운로드한 후 scp로 서버에 저장합니다. (서버에서 wget을 직접 사용해도 안 되는 것은 아닙니다.) 제가 저장한 경로는:/usr/local/openresty/lualib/resty, 이어서nginx입니다.conf에 lua 파일 추가 경로:lua_package_path "/usr/local/openresty/lualib/resty/lua-resty-http/lib/?.lua;;";
추가 위치 추가:
location/ask_accesstoken { content_by_lua_file/path/to/ask_accesstoken.lua; }
다음은 마른 물건입니다.
local http = require "resty.http"
local httpc = http:new()
local res, err = httpc:request_uri("https://api.weixin.qq.com/cgi-bin/token", {
method = "GET",
query = {
grant_type = "client_credential",
appid = "APPID", -- appid
secret = "SECRET", -- secret
},
ssl_verify = false, -- https
headers = {["Content-Type"] = "application/x-www-form-urlencoded" },
})
if not res then
ngx.say("failed to request: ", err)
return
end
ngx.status = res.status
ngx.say(res.body)
편집이 끝난 후, 시험 후에 또 하나의 문제가 발생할 수 있습니다:failed to request:api.weixin.qq.com could not be resolved (110: Operation timed out).
이것은 DNS 해석이 필요하기 때문입니다. 이때 nginx에 있습니다.conf의 서버에 한마디 추가:resolver 114.114.114;(이것은 공공 DNS 해석 서버 주소입니다. 저는 구글의 8.8.8로 때때로 접근할 수 없습니다. 어떤 벽 덕분입니다=).
이렇게 하면 access_토켄이야, 잘 됐어.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.