在Windows服务应用程序中使用C#,。Net 4.5,希望上传和查询数据库的REST格式的JSON对象。
我试图找出连接到Firebase以使用WebClient.UploadString()
所需的URI的正确语法,我在上传到GAS数据库之前已经成功使用了以下代码。但我们现在正在迁移到Firebase。我设法使用OAuth2 API动态获取访问令牌,并且我可能需要将其包含在我在方法调用中使用的URI中。有没有人有一个小的剪辑(S)代码与文字字符串,以便我可以看到正确的语法?我怀疑Headers可能需要不同的值吗?
WebClient webClnt = new WebClient();
webClnt.Headers.Add("Content-Type", "application/x-www-form-urlencoded");
string result =
webClnt
.UploadString(
new Uri("https://myfirebaseDB123.firebaseio.com/????"),
JSONObjectStr);
欢呼声,
安迪
答案 0 :(得分:1)
感谢Google支持指出允许C#与Firebase交互成功的语法略有不同:
var connectionString = FirebaseServerURL + ".json?access_token=" + accessToken;
var webClnt = new WebClient();
result = webClnt.UploadString(connectionString, "PATCH", data);
因此,在您的URI和您的业务中使用“access_token =”而不是“auth =”。无需在webClnt中设置其他“网页标题”。
注意当使用“Auth”时,返回了http 400(错误请求)而不是401(未授权)。如果没有尝试进行身份验证,则返回401。