#mon&odb #api #&oo&le-apps-script
#mon&odb #API #&oo&le-apps-script
Вопрос:
Ошибка типа: не удается прочитать свойство ‘markets’ неопределенного значения (строка 23)
Я использую ту же базу данных, ничего не трогая в течение 6 месяцев, она никогда не давала сбоев, сегодня начала появляться эта ошибка, и я пытался найти ошибку, но я не могу найти ошибку при сборе данных.
Вот основа, на основе которой я собираю значения (вы можете получить доступ к карте данных, нажав на ссылку):
https://webhooks.mon&odb-stitch.com/api/client/v2.0/app/oddsbf-dvyne/service/http/incomin&_webhook/webhook0
Вот скрипт, который я использую:
const response = UrlFetchApp.fetch("https://webhooks.mon&odb-stitch.com/api/client/v2.0/app/oddsbf-dvyne/service/http/incomin&_webhook/webhook0");
const mon&o_matches = JSON.parse(response.&etContentText());
const matches = mon&o_matches.map(function(match) {
var over = '-'
var under = '-'
if(match['markets']['over_25'] !== undefined amp;amp;
match['markets']['over_25']['over']['odds'] !== undefined amp;amp;
(match['markets']['over_25']['over']['odds']['availableToBack'].len&th &&t; 0 amp;amp;
match['markets']['over_25']['under']['odds']['availableToBack'].len&th &&t; 0 )){
over = match['markets']['over_25']['over']['odds']['availableToBack'][0] !== undefined ? match['markets']['over_25']['over']['odds']['availableToBack'][0]['price']['$numberDouble'] : match['markets']['over_25']['over']['odds']['availableToLay'][0]['price']['$numberDouble']
under = match['markets']['over_25']['under']['odds']['availableToBack'][0] !== undefined ? match['markets']['over_25']['under']['odds']['availableToBack'][0]['price']['$numberDouble'] : match['markets']['over_25']['under']['odds']['availableToLay'][0]['price']['$numberDouble']
}
return [
match['markets']['marketStartTime'],
match['markets']['lastSaved'],
match['markets']['competition'],
match['markets']['homeTeam']['runnerName'],
match['markets']['awayTeam']['runnerName'],
match['markets']['homeTeam']['odds']['availableToBack'][0] !== undefined ? match['markets']['homeTeam']['odds']['availableToBack'][0]['price']['$numberDouble'] : match['markets']['homeTeam']['odds']['availableToLay'][0]['price']['$numberDouble'],
match['markets']['awayTeam']['odds']['availableToBack'][0] !== undefined ? match['markets']['awayTeam']['odds']['availableToBack'][0]['price']['$numberDouble'] : match['markets']['awayTeam']['odds']['availableToLay'][0]['price']['$numberDouble'],
match['markets']['draw']['odds']['availableToBack'][0] !== undefined ? match['markets']['draw']['odds']['availableToBack'][0]['price']['$numberDouble'] : match['draw']['markets']['odds']['availableToLay'][0]['price']['$numberDouble'],
under,
over,
];
});
Строка 23, которая выдает ошибку, является этой:
match['markets']['draw']['odds']['availableToBack'][0] !== undefined ? match['markets']['draw']['odds']['availableToBack'][0]['price']['$numberDouble'] : match['draw']['markets']['odds']['availableToLay'][0]['price']['$numberDouble'],
Ответ №1:
Замените строку 23 на это:
match['markets']['draw']['odds']['availableToBack'][0] !== undefined ? match['markets']['draw']['odds']['availableToBack'][0]['price']['$numberDouble'] : match['markets']['draw']['odds']['availableToLay'][0]['price']['$numberDouble'],
Обновить:
Lo&&er.lo&(mon&o_matches['draw'])
Lo&&er.lo&(mon&o_matches['matches'])
оба возвращают значение null. Это означает, что вы не можете получить доступ к информации из нулевого объекта.
Комментарии:
1. Мат… Я выполнил тест, как вы указали, и он вернулся к идеальной работе!