Also versuche ich eine Website zu erstellen, die einen Brief an einen lokalen Kongressabgeordneten sendet. Die Website besteht hauptsächlich aus einem Formular, das beim Klicken auf "Absenden" einen Vertreter zurückschickt, der über die Google Civic Info-API kontaktiert werden kann. Ich bin ziemlich neu in der HTTP-Kommunikation, daher bin ich mir nicht sicher, warum ich beim Versuch, GET zu verwenden, einen 403-Fehler bekomme.Kann nicht herausfinden, wie man APIs richtig verwendet
Ich weiß nicht einmal, ob ich die API richtig verwende. Das Ziel besteht darin, eine Adresse (zusammen mit zusätzlichen Informationen) einzureichen, diese Daten an die API zu senden und sie einem Kongressabgeordneten auf der Grundlage der von ihm übermittelten Informationen zurückzugeben.
Link zu Google Civic Info API: https://developers.google.com/civic-information/docs/v2/representatives/representativeInfoByAddress
Mein Code:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content = "IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<title>Lob Application</title>
<link href = "stylesheet.css" rel = "stylesheet" >
</head>
<body>
<div id = formInput class = "container-fluid">
<form name = "submitDataForm" method = "GET" onsubmit="getData()">
Name:<br>
<input type = "text" name = "name"><br>
Address Line 1:<br>
<input type = "text" name = "addressLineOne"><br>
Address Line 2:<br>
<input type = "text" name = "addressLineTwo"><br>
City:<br>
<input type = "text" name = "city"><br>
State:<br>
<input type = "text" name = "state"><br>
Zip Code:<br>
<input type = "text" name = "zip"><br>
Message:<br>
<input type = "text" name = "message"/><br>
<input id = "submit" type = "submit" value = "Submit"/>
</form>
</div>
<script src="processData.js" type = "text/javascript"></script>
</body>
</html>
Javascript:
function getData(){
var xhr = new XMLHttpRequest()
xhr.open("GET", "https://www.googleapis.com/civicinfo/v2/representatives/", false);
xhr.send(null);
console.log(xhr.status);
console.log(xhr.statusText);
}