http.get()
을 사용하여 현재 사용중인 API에서 JSON을 가져 오지만 데이터를 가져 오지 못합니다. 이 JSON이 NodeMCU에 비해 너무 큽니다. 나는 subpart "stats :"에있는 정보 만 필요합니다. http.get()
JSON의 일부만 가능합니까?NodeMCU에서 API를 사용할 때 JSON의 일부만 가져 오기
는 편집 :
이 나는 또한 getstats도()
function getaeonrate()
http.get("https://api.coinmarketcap.com/v1/ticker/aeon/?convert=EUR", nil, function(code, dataaeon)
if (code < 0) then
print("can't get aeon")
else
-- Decode JSON data
m = cjson.decode(dataaeon)
-- Extract AEON/EUR price from decoded JSON
aeonrate = string.format("%f", m[1]["price_eur"]);
aeonchange = "24h " .. m[1]["percent_change_24h"] .. "% 7d " .. m[1]["percent_change_7d"] .. "%"
dofile('update_display.lua')
end
end)
end
위에 또 다른 API에서 데이터를 가져 오는 또 다른 기능을하지만 지금은 이상한 일이 내 코드
function getstats()
http.get("https://api.aeon-pool.com/v1/stats_address?address=WmsGUrXTR7sgKmHEqRNLgPLndWKSvjFXcd4soHnaxVjY3aBWW4kncTrRcBJJgUkeGwcHfzuZABk6XK6qAp8VmSci2AyGHcUit", nil, function(code, pool)
if (code < 0) then
print("can't get stats")
else
h = cjson.decode(pool)
hashrate = h[1]["hashrate"]
print(hashrate)
dofile('update_display.lua')
end
end)
end
입니다 , getstats()에서 'pool'에 액세스하려고 할 때 getaeonrate()에서 json 데이터를 가져옵니다. 그래서 "json"을 다른 함수에서 얻고 있기 때문에 "hashrate"는 json에도 없습니다.
는 난 단지 getstats도 새 프로젝트()를 만드는 시도하고 그게 내가 항상 내가 응답이 api.aeon-에서 너무 커서 생각이
HTTP client: Disconnected with error: -9
HTTP client: Connection timeout
HTTP client: Connection timeout
어제 같은 오류를 얻을 전혀 작동하지 않습니다 pool.com, 웹 브라우저에서 json을 보면 상위 항목이 'stats :'라는 것을 알 수 있으며 다른 것들은 필요하지 않습니다. 그래서 요청이 커지면 http.get()만이 json의 일부가된다. 따라서 원래의 질문이다. 현재 올바르게 작동하지 않는지 잘 모르겠다면, nodemcu 펌웨어는 일반적으로 http.get()에 문제가 있었으며 오랫동안 제대로 작동하지 않았지만 api.coinmarketcap에서 데이터를 가져 오는 것으로 읽었습니다. co.kr은 원래 프로젝트에서 잘 작동합니다.
이 같은 재미가 낮은 품질의 포스트 없지만이 개선 될 수있다 그리고 어떤이 생각하는 것 같이 아니, 그것은 오프 주제 아니라 그것은 NodeMCU에 루아 프로그래밍에 관하여이다.. 펌웨어. 누락 된 작은 자기 포함 된 코드 샘플 및 이상적으로 사용하는 API URL입니다. 유용한 링크 : https://stackoverflow.com/help/how-to-ask –
@ MarcelStör 지금 많은 정보를 추가했습니다. 누군가가 지금 나를 도울 수 있기를 바랍니다 – Tanonic
당신의 의견은 무엇입니까? –