Fix no link previews being generated for pages with invalid structured data (#16979)

Fix #16955
This commit is contained in:
Eugen Rochko 2021-11-13 23:07:13 +01:00 committed by GitHub
parent 070b1b8397
commit 5d7c852283
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -59,7 +59,7 @@ class LinkDetailsExtractor
end end
def json def json
@json ||= Oj.load(@data) @json ||= first_of_value(Oj.load(@data))
end end
end end
@ -178,6 +178,8 @@ class LinkDetailsExtractor
@structured_data ||= begin @structured_data ||= begin
json_ld = document.xpath('//script[@type="application/ld+json"]').map(&:content).first json_ld = document.xpath('//script[@type="application/ld+json"]').map(&:content).first
json_ld.present? ? StructuredData.new(json_ld) : nil json_ld.present? ? StructuredData.new(json_ld) : nil
rescue Oj::ParseError
nil
end end
end end