nse-data
Version:
NSE (National Stock Exchange) - Stock & Indices Data API
40 lines (39 loc) • 1.82 kB
JavaScript
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.get = void 0;
const config_1 = require("../common/config");
const handleError = (error) => {
const message = error.response
? `Response error: ${error.response.status} - ${error.response.data}`
: error.request
? `Request error: ${error.request}`
: `Error: ${error.message}`;
console.error(message);
console.error("Config:", error.config);
console.error("Full error details:", JSON.stringify(error, null, 2)); // Log full error details
throw new Error('Error generating response, please retry!');
};
const get = (url) => __awaiter(void 0, void 0, void 0, function* () {
try {
const response = yield fetch(`${config_1.config.baseURL || "https://www.nseindia.com/api"}${url}`, {
method: 'GET',
});
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
return yield response.json(); // Assuming the response is JSON
}
catch (error) {
handleError(error);
}
});
exports.get = get;
;