• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 Node.js, Express 게시판 검색기능 만들기 하면서 막혔어요!!

검색기능 만들기 하면서 막혔어요!!

8 글 보임 - 1 에서 8 까지 (총 8 중에서)
  • 글쓴이
  • #21468

    이재룡
    참가자

    검색기능 만들기 하면서 막혔어요!!

    Failed to find a valid digest in the 'integrity' attribute for resource 'https://cdn.jsdelivr.net/npm/jquery@3.5.1/dist/jquery.min.js' with computed SHA-384 integrity 'ZvpUoO/+PpLXR1lu4jmpXWu80pZlYUAfxl5NsBMWOEPSjUn/6Z/hRTt8+pR6L4N2'. The resource has been blocked

    크롬 브라우저 사용하고 있구요. 브라우저 콘솔에 위와 같은 메시지가 나옵니다.

    jquery.min.js 에 intergrity 붙여봤는데도 안되요~~!!

    도와주세요~~!!

    #21473

    codingapple
    키 마스터

    설치하는 코드가 잘못 복붙된것 같군요 

    <script   src="https://code.jquery.com/jquery-3.6.0.min.js"   integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4="   crossorigin="anonymous"></script>

    이걸 써봅시다 

    #21508

    이재룡
    참가자

    <----------------server.js---------------->

    const express = require('express');
    const app = express();
    const bodyParser = require('body-parser');
    const MongoClient = require('mongodb').MongoClient;
    const methodOverride = require('method-override');
    const passport = require('passport');
    const LocalStrategy = require('passport-local').Strategy;
    const session = require('express-session');

    app.use(express.urlencoded({extended: true}));
    app.use(methodOverride("_method"));
    app.set('view engine', 'ejs');
    app.use('/public', express.static('public'));
    app.use(session({secret : '비밀코드', resave : true, saveUninitialized: false}));
    app.use(passport.initialize());
    app.use(passport.session());

    require('dotenv').config();

    <----------------생략---------------->

    app.get('/search', (요청, 응답)=>{
        console.log(요청.query.value); // 요청한 유저의 모든 정보가 담겨있음
        db.collection('post').find({제목 : 요청.query.value}).toArray((에러, 결과)=>{
            console.log(결과)
            응답.render('search.ejs', {posts : 결과})
        })
    })

    <----------------list.ejs---------------->

        <!-- 콘텐츠 영역 시작 -->
        <h4 class="ml-2 my-3 text-center">서버에서 가져온 할일 리스트</h4>

        <div class="container input-group mb-2">
          <input class="form-control" id="search-input">
          <button class="input-group-append btn btn-danger" id="search">검색</button>
        </div>

        <div class="container">
          <ul class="list-group">
            <% for (var i = 0; i < posts.length; i++){ %>
            <li class="list-group-item">
              <p class="ml-2 my-3">글번호 : <%= posts[i]._id %></p>
              <h4 class="ml-2 my-3"><a href="http://localhost:8080/detail/<%= posts[i]._id %>" target="_self">할일 제목 : <%= posts[i].제목 %></a></h4>
              <p class="ml-2 my-3">할일 마감날짜 : <%= posts[i].날짜 %></p>
              <button class="btn btn-danger delete ml-2 my-3" data-id="<%= posts[i]._id %>">삭제</button>
            </li>
            <% } %>
          </ul>
        </div>
        <!-- 콘텐츠 영역 끝 -->

        <script   src="https://code.jquery.com/jquery-3.6.0.min.js"   integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4="   crossorigin="anonymous"></script>

        <script>

          $('.delete').click(function(e){
            var 글번호 = e.target.dataset.id;
            var 지금누른거 = $(this);

           $.ajax({
            method : 'DELETE',
            url : '/delete',
            data : {_id : 글번호}
            }).done(function(결과){
              //페이지를 강제로 새로고침해주세요
              //삭제버튼을 누른 <li> 요소를 제거해주세요/안보이게
              console.log('성공햇어염');
              지금누른거.parent('li').fadeOut();
            }).fail(function(xhr, textStatus, errorThrown){
              console.log(xhr, textStatus, errorThrown);
            });
          });

          // query string / 서버로 몰래 전달되는 정보들임
          // 검색버튼 누르면 서버로 get 요청합시다
          $('#search').click(function(){
            var 입력한값 = $('#search-input').val()
            window.location.replace('/search?value=' + 입력한값) // 현재 페이지 url 바꾸는 법 (실은 get 요청이랑 똑같음)
          });

        </script>

    <-------------------------------->

    jquery.min.js 올려주신거로 수정했습니다. 

    브라우저 콘솔창에 에러메시지는 안나오는데요!!

    서버에서 데이터를 불러오지를 못합니다!!

    list.ejs에서 리스트뷰는 보이는데요.... 검색이 안되고 있어요!!ㅜㅜ

    [nodemon] restarting due to changes...
    [nodemon] restarting due to changes...
    [nodemon] starting node server.js
    listening on 8080
    밥먹기
    []

    #21534

    codingapple
    키 마스터

    크롬 콘솔창에 에러는 안뜹니까

    #21535

    이재룡
    참가자

    DevTools failed to load source map: Could not load content for chrome-extension://jblndlipeogpafnldhgmapagcccfchpi/sourcemaps/contentscript.js.map: HTTP error: status code 404, net::ERR_UNKNOWN_URL_SCHEME

    DevTools failed to load source map: Could not load content for chrome-extension://jblndlipeogpafnldhgmapagcccfchpi/sourcemaps/inpage.js.map: HTTP error: status code 404, net::ERR_UNKNOWN_URL_SCHEME

     

    요거 두개 뜨네요!!

    #21541

    codingapple
    키 마스터

    .toArray().then((에러, 결과)=>{
      결과어쩌구
    })

    서버에서 아마 then이 빠진듯요 

    #21543

    이재룡
    참가자

    넵~~!! 코드 한번 뜯어 볼게요!!

    #21577

    이재룡
    참가자

    해결했습니다. 감사합니다.

8 글 보임 - 1 에서 8 까지 (총 8 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠