C#Web服务:通过弹出窗口进行跨平台通信

C#Web服务:通过弹出窗口进行跨平台通信,c#,web-services,rest,azure,C#,Web Services,Rest,Azure,我正在建立一个公共开发者API,这样人们就可以使用我公司拥有的在线服务。它涉及一个在线产品查看平台,用户可以在其中浏览我们的服装产品。我们允许开发者在他们的站点中实现这一点,并通过弹出窗口在我们的平台上浏览他们的产品 要突出重点,请执行以下操作: 允许开发者在他们的站点中实现链接,并通过弹出窗口在我们的平台上浏览他们的产品 基本上,作为开发人员,您将向站点添加一个链接按钮。当您的客户点击链接时,它会打开一个弹出窗口,URL参数(如您的“id”)将传递到我的后端,然后我将发送必要的产品 如何实现此

我正在建立一个公共开发者API,这样人们就可以使用我公司拥有的在线服务。它涉及一个在线产品查看平台,用户可以在其中浏览我们的服装产品。我们允许开发者在他们的站点中实现这一点,并通过弹出窗口在我们的平台上浏览他们的产品

要突出重点,请执行以下操作:

允许开发者在他们的站点中实现链接,并通过弹出窗口在我们的平台上浏览他们的产品

基本上,作为开发人员,您将向站点添加一个链接按钮。当您的客户点击链接时,它会打开一个弹出窗口,URL参数(如您的“id”)将传递到我的后端,然后我将发送必要的产品

如何实现此功能?允许第三方通过跨平台机制访问我的数据库

例如,我会为您提供如下链接:

www.my-site.com/api/products?开发者id=34&category=party

单击此按钮时,将打开一个弹出窗口,并与我的后端和数据库通信

我需要知道的是,

1) 设置此功能需要什么程序和技术

2) 我应该关注的安全细节

3) 有没有与此相关的例子

我在C#Web服务中编写后端代码,我的服务和数据库托管在Microsoft Azure

我知道在电视上问这个问题很难,但任何信息都能帮助我理解:)

类似服务示例:

1) Facebook登录API-开发者可以在自己的网站上实现它


2) 谷歌Adsense

我建议您查看谷歌开发者控制台或Azure,看看它们是如何工作的。相反,这会给你提供大量你想要的信息

我可以想到以下事情

1) 开发人员控制台:

  • 允许开发人员在您的站点上注册,让我创建他们可以用来发送请求的api密钥
  • 用于加密请求和响应的良好加密机制
  • 以JSON或XML格式发送数据
  • 为不同的语言提供足够的“如何”将非常有帮助
  • 在服务器端,您应该查找的内容很少

  • 检查错误请求或包含其他内容。通过提供更详细的响应通知开发人员,而不仅仅是“请求无效,请重试”

  • 您应该让开发人员知道他们错在哪里。使用chrome中的高级REST客户端应用程序了解我的意思

  • 验证请求:身份验证和授权

  • 限制每秒请求的数量或用户或时间限制等

  • 返回JSON或XML格式的数据

  • 提供有关如何在网站上显示的Javascript片段 会有帮助的

  • 我给出了总体思路,有更好的解决方案,但需要的知识超出了我目前的水平

    祝你好运。

    它仍然非常广泛:),因为有很多方法可以实现这一点。我可以想到的几种方法是:1)当开发人员调用API时,只向他们提供JSON/XML格式的数据,让他们决定如何在他们的站点上显示这些数据2)当有人调用API时,您返回完整的HTML。