Sto tentando di utilizzare l'API di ricerca personalizzata di Google nel mio progetto .NET. Ho una chiave API fornita dalla mia azienda. Ho creato un motore di ricerca personalizzato utilizzando il mio account Google e copiato il valore "cx".Passi per l'utilizzo dell'API di ricerca personalizzata di Google in .NET
Sto usando il seguente codice:
string apiKey = "My company Key";
string cx = "Cx";
string query = tbSearch.Text;
WebClient webClient = new WebClient();
webClient.Headers.Add("user-agent", "Only a test!");
string result = webClient.DownloadString(String.Format("https://www.googleapis.com/customsearch/v1?key={0}&cx={1}&q={2}&alt=json", apiKey, cx, query));
Sto ottenendo il seguente errore: "Il server remoto ha restituito un errore: (403) Forbidden".
Ho provato il seguente codice troppo :
Google.Apis.Customsearch.v1.CustomsearchService svc = new Google.Apis.Customsearch.v1.CustomsearchService();
svc.Key = apiKey;
Google.Apis.Customsearch.v1.CseResource.ListRequest listRequest = svc.Cse.List(query);
listRequest.Cx = cx;
Google.Apis.Customsearch.v1.Data.Search search = listRequest.Fetch();
foreach (Google.Apis.Customsearch.v1.Data.Result result1 in search.Items)
{
Console.WriteLine("Title: {0}", result1.Title);
Console.WriteLine("Link: {0}", result1.Link);
}
Qui ottengo la seguente eccezione al Fetch():
Google.Apis.Requests.RequestError accesso Non configurato [403] errori [Messaggio [Accesso Non configurata] Localizzazione [-] Ragione [accessNotConfigured] Dominio [usageLimits]
è il parametro CX richiesto? Sto ricevendo l'errore perché sto utilizzando la chiave fornita dalla mia azienda e utilizzando il parametro CX dal motore di ricerca personalizzato utilizzando il mio account Google?
C'è qualche altro modo per ottenere "cx"? Non vogliamo visualizzare annunci Google.
Grazie mille in anticipo per l'aiuto.
vedere http://hintdesk.com/c-how-to-use-google-custom-search-api/ – Cel