Безопасный просмотр Google возвращает 400 неверных запросов
Google возвращает 400 неправильных запросов; а что не так с запросом?
open FSharp.Data
let apiKey = "key goes here - removed for stackru"
let postUrl = "http://safebrowsing.clients.google.com/safebrowsing/downloads"
let testArray = "2\nhttp://www.google.com/\nhttp://ianfette.org/"
[<EntryPoint>]
let main argv =
let foo2 = Http.Request(postUrl, httpMethod = "Post",
query = [ "client", "api"; "apikey", apiKey; "appver", "1.0"; "pver", "2.2" ],
body = TextRequest (testArray)
)
0
Я убедился, что мой ключ правильный, успешно выполнив запросы get, это только сообщение, которое терпит неудачу.
1 ответ
Решение
Когда я обновил FSharp.Data до версии 2.0.5 (выпущена 2014-03-29), это начало работать. Я могу только предположить, что в предыдущей версии была ошибка, которая теперь исправлена.
Добавлено - в список пропущенных значений по умолчанию. Повторно добавлена поддержка для указания известных заголовков HTTP в неправильном случае. Исправлена отправка HTTP-запросов при использовании переносной версии библиотеки классов FSharp.Data в полной версии.NET.
Вот окончательный (рабочий) код:
open FSharp.Data
let apiKey = "key goes here"
let postUrl = "https://sb-ssl.google.com/safebrowsing/api/lookup"
let testArray = "2\nhttp://www.google.com/\nhttp://ianfette.org/"
[<EntryPoint>]
let main argv =
let foo2 = Http.Request(postUrl, httpMethod = "Post",
query = [ "client", "api"; "apikey", apiKey; "appver", "1.5.2"; "pver", "3.0" ],
body = TextRequest (testArray)
)
0
Спасибо Сергею Тихону за то, что нашли ошибку в моей строке URL в вопросе.