여러분 안녕하세요!
어떤 카테고리에 올릴지 확신이 없어서, 필요하시면 자유롭게 카테고리를 변경해 주세요. 먼저, 제가 현재 작성 중인 Node 스크립트와 동일한 기능을 하는 Python 스크립트에 대해 도움을 주셔서 감사합니다
. 이제 저는 API 요청을 보내 Data Explorer 쿼리를 실행하고, 응답을 받아서 그로부터 얻은 숫자를 단순히 표시하려 하고 있습니다. Python 코드는 정상적으로 작동합니다. 코드는 다음과 같습니다:
# Imports
import requests
import json
# Environment Variables
ENDPOINT = 'https://community.myCompanyName.com/admin/plugins/explorer/queries/73/run'
API_KEY = '<api_key>'
API_USERNAME = '<my_username'
# Core Functions
def send_request(endpoint):
headers = {'Content-Type': 'multipart/form-data', 'Api-Key': API_KEY, 'Api-Username': API_USERNAME}
request = requests.post(url = endpoint, headers = headers)
print("Request Status Code: {}".format(request.status_code))
# Unprocessed API request response
response = json.loads(request.text)
response_columns = response["columns"]
response_rows = response["rows"]
new_users = response_rows[0][0]
active_users = response_rows[0][1]
new_topics = response_rows[0][2]
employees_replies = response_rows[0][4]
external_users_replies = response_rows[0][3] - response_rows[0][4]
response_text = "🤖 Discourse Last Month Stats\nNew Users: {}\nActive Users: {}\nNew Topics: {}\nEmployees Replies: {}\nExternal Users Replies: {}".format(new_users, active_users, new_topics, employees_replies, external_users_replies)
return response_text
processed_response = send_request(ENDPOINT)
Node.js로 이식을 시도해 보았지만 301 상태 코드(“Moved Permanently”)를 받고 있으며, 제 Python 코드와 정확히 동일한 작업을 수행하는 것으로 보입니다. 코드는 다음과 같습니다:
const http = require('http');
const options = {
hostname: 'community.myCompanyNamee.com',
path: '/admin/plugins/explorer/queries/73/run',
method: 'POST',
headers: {
'Content-Type': 'multipart/form-data',
'Api-Key': <api_key>,
'Api-Username': <my_username>
}
};
var response = 1;
const req = http.request(options, (res) => {
console.log(`statusCode: ${res.statusCode}`);
response = res;
res.on('data', (d) => {
process.stdout.write(d);
});
});
req.on('error', (error) => {
console.error(error);
});
req.end();
var parsed_response = JSON.parse(response);
JS에 대한 경험이 없어서, 누군가 이 문제를 살펴봐 주시면 좋겠습니다 ![]()