>

이 문제가 발생하여 알아낼 수 없었습니다. ASP.NET Core 2와 Ajax를 사용하고 있습니다.

이것은 JavaScript 디버거가 말하는 것입니다 :

와이즈 비즈

이것은 내 JavaScript 코드입니다 :

XML Parsing Error: no root element found Location: http://localhost:52617/api/favorites/Line Number 1, Column 1:

그리고 내 API :

$(".js-toggle-fav").click(function (e) {
    function sendPost() {
        console.log("inside post send");
        var button = $(e.target);
        $.ajax({
            type: 'POST',
            url: "http://localhost:52617/api/Favorites/",
            data: {"EventId": @Model.Event.EventId},
            contentType: "application/json; charset=utf-8"
        });
    }
    $.getJSON("http://localhost:52617/api/favorites/@Model.Event.EventId", function (data) {
        if (data == null) {
            console.log("fav is null");
            sendPost();
            fav.addClass(toggling);
            fav.text("unfav");
        }
        else {
            console.log("fav is NOT null");
            sendPost();
            fav.removeClass(toggling);
            fav.text("fav");
        }
    );
});

Postman이나 restclient로이 작업을 수행하면 모든 것이 매력처럼 작동합니다! Ajax에서는 그렇지 않습니다.

와이즈 비즈 와이즈 비즈  파일에 이와 같은 작업을 수행하는 더 많은 jQuery 및 JavaScript 코드가 있으며 작동합니다! 모든 솔루션   인터넷에서 확인했지만 작동하지 않습니다.   
  • Get 메소드 (List를 리턴하거나 단일 요소가 작동 중입니다!)
  •    [HttpPost] public async Task<IActionResult> PostFavorite([FromBody] FavoriteDto favorite) { if (!ModelState.IsValid) { Console.WriteLine(ModelState.ValidationState.ToString()); return BadRequest(ModelState); } var uid = _userManager.GetUserId(HttpContext.User); var fav = await _context.Favourites.SingleOrDefaultAsync(x => x.EventId == favorite.EventId && x.UserId == uid); if (fav == null) { _context.Favourites.Add(new Favorite { EventId = favorite.EventId, UserId=uid }); } else { _context.Favourites.Remove(fav); } try { await _context.SaveChangesAsync(); } catch (DbUpdateException) { if (FavoriteExists(favorite.EventId)) { return new StatusCodeResult(StatusCodes.Status409Conflict); } else { throw; } } return Ok(favorite); }
    • 답변 # 1

      다음은 patch 유틸리티를 사용하고 있고 패치 할 각 파일에 자체 패치가 있다고 가정 할 때 추측됩니다.

      if patch  -N --dry-run --silent /dev/null; then
          echo The file has not had the patch applied,
          echo and the patch will apply cleanly.
      else
          echo The file may not have had the patch applied.
          echo Or maybe the patch doesn't apply to the file.
      fi
      

      또는 이전에 파일을 패치하고 특정 파일에 영향을 주 었는지 알고 싶다면 -B 옵션을 사용하여 첫 번째 패치 라운드를 실행하면 백업이 수행됩니다. 그런 다음 백업이 있는지 확인합니다.

      peterph2012-11-15 10:12:46

      이 경우에 nohup을 사용하기로 선택한 이유에 대해 좀 더 자세히 설명해 주시겠습니까?

      zrajm2013-04-17 12:48:22

      @zrajm-내가 왜 그랬는지 기억이 나지 않습니다. 그리고 (편집 승인 요청으로 인해) 그것이 거기에 있다는 것을 알았을 때 너무 오래 전에 그 이유를 복구 할 기회가 없었습니다. 지금 그것을 보는 것은 나에게는 무의미한 것 같습니다.

      Omnifarious2019-10-16 02:41:59
    • 답변 # 2

      제 경우에는 패치 명령을 실행할 때 수행 할 작업 (특히 CI의 경우)을 묻는 대화 형 터미널로 끝나지 않도록 확인하고 싶었습니다.

      필요한 경우 -forward 인수도 사용할 수 있으며 이미 적용된 경우 패치를 건너 뛸 수 있습니다.

    • 답변 # 3

      다른 사람에게 도움이되는 경우에만 bash 스크립트를 사용하는 경우 Omnifarious에서 제공 한 예제가 작동하지 않습니다. bash에서 성공적인 명령의 종료 상태는 0입니다.

      따라서 다음이 작동합니다.

      patch -p0 -N --dry-run --silent < patchfile 2>/dev/null
      #If the patch has not been applied then the $? which is the exit status
      #for last command would have a success status code= 0
      if [ $? -eq 0 ];
      then
          #apply the patch
          patch -p0 -N < patchfile
      fi
      

      검사는 0 대신 1에 대해 이루어져야합니다. if [$? -eq 1]

      Crisson2015-12-20 05:46:52

    관련 자료

  • 다음 xamarin.forms - Xamarin 양식 Android에서 활성화 된 Proguard와 함께 APK 파일이 작동하지 않음