Facebook 评论插件在创建评论时返回 500 错误

Facebook comments plugin returning 500 error when creating a comment

我在 MVC 环境中使用 Facebook 评论插件,当我添加评论时它崩溃并在控制台中出现 500 错误。我不会在页面加载期间加载所有评论时出现错误。但是,评论已成功添加到URL,所以错误发生在创建create之后。

这里是相关代码,尽可能清理干净(JavaScript在底部)

<div id="fb-root"></div>
<script async defer crossorigin="anonymous" src="https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v3.2"></script>

<div class="w-container">
    <div id="allPosts">
        @foreach (var post in ViewBag.Posts.Data)
        {
            <div class="w-row">
                <div class="w-col w-col-12 w-col-medium-12 w-col-small-12">
                    <p>@post.MetaDescription ...</p>
                </div>
            </div>
            <div class="w-row post-button">
                <div class="w-col w-col-3 w-col-small-12">
                    <input type="hidden" class="postBodyHtmlHidden" value="@post.Body" />
                    <input type="hidden" class="postSlug" value="@post.Slug" />
                    <div class="fb-comments" style="display: none;" data-href="http://localhost:36998/blog#@post.Slug" data-numposts="5"></div>
                    <input type="button" value="Continue Reading" class="btn btn-primary continue-reading-btn" />
                </div>
            </div>
        }
    </div>

    <div id="postBody" style="display:none;">
        <div class="w-row">
            <div class="w-col w-col-12">
                <input type="button" value="Back" onclick="AllPosts()" class="btn btn-primary" />
                <br />
                <div id="postHmtlDiv">

                </div>
                <div id="postCommentDiv">

                </div>
            </div>
        </div>
    </div>
</div>

<script>
    $('.continue-reading-btn').on("click", function () {
        var postHtml = $(this).closest('.w-row').find('.postBodyHtmlHidden').val();
        var postSlug = $(this).closest('.w-row').find('.postSlug').val();
        var postComment = $(this).closest('.w-row').find('.fb-comments').html();

        $('#allPosts').css("display", "none");
        $("#postHmtlDiv").html(postHtml);
        $('#postCommentDiv').html(postComment);
        $('#postCommentDiv .fb-comments').removeAttr('style');
        $("#postBody").fadeIn("slow");

    });

    function AllPosts() {
        $('#postBody').css('display', 'none');
        $('#postHmtlDiv').html('');
        $('#allPosts').fadeIn('slow');
    };

</script>

我不知道如何调试它。

错误看起来像这样(同样,在添加评论之后):

答案很简单!此代码无效!

<div class="fb-comments" style="display: none;" data-href="http://localhost:36998/blog#@post.Slug" data-numposts="5"></div>

data-href 属性 不能是本地主机。我将其更改为其他内容并且有效!