Как внести изменение в строке ссылки Get запроса?
Ребята помогите реализовать очередную затею. В инете не нашел примеров(((
В коде main.js прописанная ссылка, через нее получаю Get запрос данных по API. Как внести изменения в строке ссылки, чтобы запрос шел по новой ссылке уже? https://btc-alpha.com/api/v1/orderbook/ETH_USDT/ Надо менять это "ETH" или "ETH_USDT" Тоесть пишу в окошке (или выбираю со списка огромного) нужную монету - кликаю "Применить" и оно прогружает данные по новой ссылке уже. Спасибо. |
Цитата:
var url='https://www.livecoin.net/ru/trading/ETH_USD'; url=url.replace(/[^\/]*$/,'new_type'); alert(url); |
https://codepen.io/vitalij-kotlqr/pen/bGNpREW
Если так ввожу то норм, а через форму ввода то немогу текст передать в JS. Исправь пожалуйста ошибку в передачи текста :help: А еще обьясни ПОЖАЛУЙСТА как составлят этот код если там другая будет ссылка например эта targetUrl_PZM_USD = 'https://btc-alpha.com/api/v1/orderbook/ETH_USD/'; или эта targetUrl_PZM_USD_Livecoin = 'https://api.livecoin.net/exchange/order_book?currencyPair=ETH/USD'; |
Цитата:
Это понял). А если вставка нужна в средине ссылки!! Как быть? И как передать текст в js ...вместо 'new_type' вставить.:help: |
Цитата:
До этого тебе нужно было менять что-то в конце строки... Потом появилось еще два варианта строк для замены... Теперь нужно что-то менять вообще в какой-то середине... :blink: Возможно для каждого варианта замены тебе придется использовать разные варианты замен. |
Цитата:
var url = 'https://btc-alpha.com/api/v1/orderbook/ETH_USD/'; url=url.replace(/[^\/]+(?=\/$)/,'new_type'); alert(url); |
Цитата:
var url = 'https://api.livecoin.net/exchange/order_book?currencyPair=ETH/USD'; url=url.replace(/=[^=]+/,'=new/type'); alert(url); |
Цитата:
Можно еще пример для этой ссылки на будущее, тут нужно в средине замену сделать именно только BTC_ETH . https://poloniex.com/public?command=...ET H&depth=10 |
[B]html[/B] <p>Введите пару торгову : <input type="text" id="new_type" value="ETH_USD"> </p> [B]js[/B] var new_type= $('#new_type'); targetUrl = 'https://btc-alpha.com/api/v1/orderbook/BTC_USD/'; targetUrl=targetUrl.replace(/[^\/]+(?=\/$)/,'new_type'); как передать со страницы new_type в ссылку чтоб заменить BTC_USD на new_type ? где там ошибка допущена?( |
Цитата:
var url = 'https://poloniex.com/public?command=returnOrderBook¤cyPair=BTC_ETH&depth=10'; url=url.replace(/((\?|&)currencyPair=)[^&]+/,'$1new_type'); alert(url); Это кагбэ универсальный вариант замены значения параметра currencyPair на что-то другое. |
Цитата:
Для тебя нет разницы между строковой константой и именем переменной... Так же нет понимания связи контента на странице со скриптом, который будет работать на той же странице. :cray: Чтобы использовать значение поля, в котором, наверное, будет выполнен ввод данных, нужно знать в какой момент это значение нужно будет брать. А из твоего примера это не понятно... :no: |
Предложу пока такой вариант... :write:
<!DOCTYPE html> <html> <head> <meta http-equiv='Content-Type' content='text/html; charset=windows-1251' /> <script src='https://code.jquery.com/jquery-latest.js'></script> <!-- <script src="https://code.angularjs.org/1.3.9/angular.min.js"></script> <script src="https://code.angularjs.org/1.3.9/angular-route.js"></script> --> <style type='text/css'> </style> <script type='text/javascript'> $(function(){ $('#ok').click(function(){ var val=$('#new_type').val(); var url='https://btc-alpha.com/api/v1/orderbook/BTC_USD/'; url=url.replace(/[^\/]+(?=\/$)/,val); alert(url); }); }); </script> </head> <body> <p>Введите пару торгову : <input type="text" id="new_type" value="ETH_USD"></p> <button id='ok'>Ok</button> </body> </html> |
Цитата:
Благодарю. :thanks: :thanks: |
Цитата:
https://codepen.io/vitalij-kotlqr/pen/bGNpREW О ВЕЛИКИЙ ГУРУ .... в окне алерта показыает изменение в ссылке, а в работе кода не рабоатет((.... что ж не так то там:help: |
Цитата:
Вот есть у тебя поле... Там будет какое-то значение... Его можно записать руками... Вставить из буфера обмена... Отредактировать... В какой момент его можно использовать? Ты про это так и не написал. :( |
Цитата:
Заходим на сайт, вводим нужную пару ETH/USD и тд , и кликаем на Получить курс. Нам отображает курс нужной выбраной пары) |
Вложений: 1
Цитата:
|
Цитата:
|
Цитата:
<!DOCTYPE html> <html> <head> <meta http-equiv='Content-Type' content='text/html; charset=windows-1251' /> <script src='https://code.jquery.com/jquery-latest.js'></script> <!-- <script src="https://code.angularjs.org/1.3.9/angular.min.js"></script> <script src="https://code.angularjs.org/1.3.9/angular-route.js"></script> --> <style type='text/css'> </style> <script type='text/javascript'> $(function(){ $('button').click(function(){ var val=$('#new_type').val(); var url='https://btc-alpha.com/api/v1/orderbook/BTC_USD/'; url=url.replace(/[^\/]+(?=\/$)/,val); alert(url); }); }); </script> </head> <body> <button class='button'>Получить курс</button> <p>Введите пару торгову : <input type="text" id="new_type" value="ETH_USD"></p> </body> </html> |
Цитата:
Код HTML: <p>Введите торгову пару: <input type="text" id="new_type" value="ETH_USD"></p> <button class='button'>Получить курс</button> <div class="div"></span> <div class="sell"> buy BTC_USD: <span></span></div> <div class="buy"> sell BTC_USD: <span></span></div> </div> Код JS: var btn = document.querySelector('button'); var div = document.querySelector('.div'); var divBuy = document.querySelector('.buy span'); var divSell = document.querySelector('.sell span'); var val=$('#new_type').val(); var url='https://btc-alpha.com/api/v1/orderbook/BTC_USD/'; url=url.replace(/[^\/]+(?=\/$)/,val); let proxyUrl='https://cors-anywhere.herokuapp.com/'; let resUrl = proxyUrl + url; console.log() btn.addEventListener('click', () => { fetch(resUrl) .then(res => { res.json().then(body => { divBuy.innerHTML = body.buy[0].price; divSell.innerHTML = body.sell[0].price; btcalpha = body.buy[0].price; console.log(body); }); }) .catch(err => console.log(err)); }); btn.addEventListener('click', () => { - по клику получаем курс. Если у 9 строке, val заменить на 'XRP_USD' и удалить 6 строку, то курс обновится и покажет результат XRP_USD. А при вводе в поле "Введите торгову пару:", не меняется ссылка( и не получаем результат курса. Где ж все таки кроется ошибка?:help: Код туточки: https://codepen.io/vitalij-kotlqr/pen/WNbxNVy |
Цитата:
И уж если без всякого побочного document.querySelector, то не var val=$('#new_type').val();, а var val = document.querySelector("#new_type").value; |
Цитата:
|
Цитата:
Как правильно прописать в этой ссылке замену val, ошибку выдает блин((( var url= 'https://api.hotbit.io/api/v1/order.book?market=ETH/USDT&side=2&offset=0&limit=1'; url=url.replace(/((\?|?)market=)[^&]+/,val); |
Цитата:
Цитата:
|
Цитата:
мне ж в место ETH/USDT надо прописывать val, чтоб замену произвести по клику в этой ссылке https://api.hotbit.io/api/v1/order.b...fset=0&limit=1 |
Цитата:
var url= 'https://api.hotbit.io/api/v1/order.book?market=ETH/USDT&side=2&offset=0&limit=1'; var val='new_type'; url=url.replace(/([?&]market=)[^&]+/,'$1'+val); alert(url); |
Цитата:
Все по красоте теперичя. Спасибо):dance: :dance: :dance: |
Часовой пояс GMT +3, время: 00:09. |