• Как указать город в url?

    @nicolaa Автор вопроса
    Подсказали решение проблемы на stackoverflow
    Все роуты добавляем в группу и делаем обработку, если зашли без города, не знаю на сколько это правильное решение, но на данный момент это решение работает

    Route::prefix('{city?}')->group(function() {
        Route::get('part/{slug}', [App\Http\Controllers\PartsController::class, 'part'])->name('part');
        Route::get('parts', [App\Http\Controllers\PartsController::class, 'parts'])->name('parts');
        Route::get('spare-cars/{marka?}/{model?}/{slug?}', [App\Http\Controllers\CarController::class, 'spareCars'])->name('spare.cars');
        Route::get('/', [App\Http\Controllers\PartsController::class, 'checkUrl'])->name('checkUrl');
    });
    
    
        public function checkUrl($slug) {
            if($slug == 'parts') {
                return redirect('moskva/parts');
            } else if($slug == 'part') {
                return redirect('moskva/part');
            }
        }
    Ответ написан
    Комментировать
  • Как запомнить авторизацию сайта на nodejs?

    @nicolaa Автор вопроса
    К сожалению решить данную задачу через nightmare не получилось
    Решил с помощью puppeteer

    Пример - сохранение кук в фаил

    const puppeteer = require('puppeteer')
    const fs = require('fs');
    
    (async () => {
      const browser = await puppeteer.launch()
      const page = await browser.newPage()
    
      await page.goto('https://github.com/login')
    
      await page.type('#login_field', process.env.GITHUB_USER)
      await page.type('#password', process.env.GITHUB_PWD)
    
      await page.waitForSelector('.js-cookie-consent-reject')
      await page.click('.js-cookie-consent-reject')
      await page.$eval('[name="commit"]', (elem) => elem.click())
      await page.waitForNavigation()
    
      const cookies = await page.cookies()
      const cookieJson = JSON.stringify(cookies)
    
      fs.writeFileSync('cookies.json', cookieJson)
    
      await browser.close()
    })()


    Чтение кук из файла
    const puppeteer = require('puppeteer')
    const fs = require('fs');
    
    (async () => {
      const browser = await puppeteer.launch()
      const page = await browser.newPage()
    
      const cookies = fs.readFileSync('cookies.json', 'utf8')
    
      const deserializedCookies = JSON.parse(cookies)
      await page.setCookie(...deserializedCookies)
    
      await page.goto(`https://github.com/${process.env.GITHUB_USER}`)
    
      await browser.close()
    })()

    Статья
    Ответ написан
    Комментировать
  • Как сделать проверку на существование id в elasticsearch?

    @nicolaa Автор вопроса
    Перечитав документацию, нашел подходящий для меня способ
    GET my-index-000001/_search
    {
      "query": {
        "terms": {
          "_id": [ "1", "2" ] 
        }
      }
    }

    В связке с Laravel/ElasticSearch, получилось так -

    $items = $elastic->search([
                'index' => 'baza',
                'body' => [
                    "query" => [
                        "terms" => [
                            "_id" => [ $id ]
                        ]
                    ]
                ]
            ]);
    Ответ написан
    Комментировать
  • Получение ид странички пользователя вконтакте по номеру телефона?

    @nicolaa Автор вопроса
    Тех. Поддержка ВК ответила
    Получить ИД по номеру невозможно
    Происходит исключительно отправка сообщений, контактную информацию компания не получает, только статус отправки сообщения(Доставлено, Не доставлено)
    Данная услуга платная и она доступна только для подтвержденных групп
    Вот сам сервис https://notify.mail.ru/
    Ответ написан
    Комментировать