标签: endpoint

仅使用手动代码调用WCF服务(无配置或自动代码)

我正在松散地遵循WCF中的方法正确的方法...手动方式来设置我的WCF服务.

我有一个手动生成的代理类,如下所示:

// Setup a client so we can call our web services.
public class EmployeeClient :IEmployeeService
{
    private readonly IEmployeeService EmployeeChannel;

    public EmployeeClient(Binding binding, string address)
    {
        var endpointAddress = new EndpointAddress(address);

        EmployeeChannel = new ChannelFactory<IEmployeeService>
                                 (binding, endpointAddress).CreateChannel();
    }

    public EmployeeResponse SaveOrUpdateEmployee(EmployeeContract employee)
    {
        return EmployeeChannel.SaveOrUpdateEmployee(employee);
    }
}
Run Code Online (Sandbox Code Playgroud)

然后我想打电话给其中的一些服务.但我不想使用任何配置文件(我正在设置一些集成测试,我不希望有更多的依赖项.)

我目前正试图像这样打电话给他们:

serviceHost = SelfServiceHost.StartupService();

employeeClient = new EmployeeClient(new BasicHttpBinding(), 
                                    SelfServiceHost.StartUpUrl);

EmployeeResponse employeeResponse = employeeClient.SaveOrUpdateEmployee(emp);
Run Code Online (Sandbox Code Playgroud)

当我这样做时,我得到这个例外:

System.ServiceModel.ProtocolException:Content Type text/xml; 服务http:// localhost:8090/EmployeeService不支持charset = utf-8 .客户端和服务绑定可能不匹配.---> System.Net.WebException:远程服务器返回错误:(415)无法处理消息,因为内容类型为'text/xml; …

wcf endpoint

2
推荐指数
1
解决办法
5581
查看次数

LoopBack:如何在代码中动态创建自定义REST端点(On The Fly)

我们使用LoopBack REST框架来公开我们的数据库(和业务逻辑).我们需要允许客户在数据库(单租户和多租户)中创建可通过REST端点访问的自定义表.所有客户都需要使用相同的公共(生产)REST端点,这些端点将在多个服务器上公开.但是,只有创建它们的客户才能访问自定义表和关联的REST端点.这意味着我们无法将自定义表的模型写入光盘.我们需要能够在生产REST端点的上下文中动态创建实际的REST端点.

问题:我们如何在代码中动态创建自定义REST端点(动态)而无需将模型写入光盘上的JSON文件?

rest dynamic endpoint strongloop loopbackjs

2
推荐指数
1
解决办法
2262
查看次数

使用快速验证器验证 req.params

我希望用户能够在端点中写入特定的帐号,并尝试验证端点参数是否存在于我的数据库中。我无法让它工作,请问我做错了什么?

我的验证

const validateReq: [
param('accountNumber').exists().custom(acctNo => accountNumberExist(acctNo)),]
Run Code Online (Sandbox Code Playgroud)

我的 accountNumberExist 函数

    accountNumberExist(inputAcct) {
    const isfound = accounts.find(account => account.accountNumber === inputAcct);
    if (isfound === undefined) throw new Error('Account Number not found');
  }
Run Code Online (Sandbox Code Playgroud)

我的账户档案

    const accounts = [
  {
    id: 1,
    accountNumber: 1234567890,
    createdOn: new Date(),
    owner: 1,
    type: 'current',
    balance: 23444.43,
    status: 'active',
  },
  {
    id: 2,
    accountNumber: 1234167890,
    createdOn: new Date(),
    owner: 1,
    type: 'savings',
    balance: 2233444.43,
    status: 'active',
  },
  {
    id: 3,
    accountNumber: 9987654321,
    createdOn: new Date(),
    owner: …
Run Code Online (Sandbox Code Playgroud)

javascript api endpoint express express-validator

2
推荐指数
1
解决办法
1万
查看次数

Nginx proxy_pass 如何传递路由参数

我正在尝试对内部 docker 容器进行 api 调用,但对于每个请求 url,我都必须在 Nginx 配置中创建 proxy_pass。我读过一些文章,最后的斜杠应该可以将某些 url 之后的所有内容传递到 proxy_pass。

阅读此处(重定向表)


例子

www.example.com/api -> 重定向到正确的端点

www.example.com/api/2020 -> 这不会重定向到 http://api/2020

配置

location = /api/ {
   proxy_pass http://api/;
}
Run Code Online (Sandbox Code Playgroud)

那么为什么这个配置不将 2020“参数”传递到 api 端点呢?当我进行如下配置时它会起作用:

location = /api/2020 {
   proxy_pass http://api/2020;
}
Run Code Online (Sandbox Code Playgroud)

但问题是它是一个参数,所以它可能是任何数字,如何解决这个问题?

我读过其他帖子,但我再次问这个问题,以便更广泛地了解参数传递的可能性。真的有必要为此使用正则表达式吗?

nginx endpoint docker nginx-reverse-proxy nginx-config

2
推荐指数
1
解决办法
8405
查看次数

如何用flask返回多张图像

我只是创建一个从文件系统返回图像的烧瓶端点。我已经用邮递员做了一些测试,效果很好。这是执行此操作的指令:

return send_file(image_path, mimetype='image/png')
Run Code Online (Sandbox Code Playgroud)

现在我尝试同时发回多个图像,例如在我的例子中,我尝试分别发回给定图像中出现的每张脸。谁能知道如何做到这一点?

python api endpoint flask python-requests

2
推荐指数
1
解决办法
8196
查看次数

用于Workflow WCF服务(XAMLX)的服务名称

我试图弄清楚如何为我创建的WF服务(MyFoo.xamlx)提供端点等.通常,当您创建服务时,您需要使用服务名称=""来反映您创建的服务类型?即通过填写这样的东西:

<Service name="MyNameSpace.Foo" behaviorConfiguration="myFooBehaviorConfig">

这适用于典型的.svc场景,我可以正常工作.只有将这个概念映射到.xamlx服务?在那里,如果我有Foo.xamlx放在服务名称内部不起作用 - 或似乎不起作用(因为没有启用元数据).

如果我然后从服务中删除了behaviorConfiguration属性,并从 标记中删除了myFooBehaviorConfig<behavior/> - 因为它基本上会为web配置带来更多的全局设置 - 繁荣!我可以看到.xamlx暴露的方法/操作?

<serviceBehaviors> <behavior name="foo" > VS <serviceBehaviors> <behavior >

起初这很好,不需要任何努力,但同时我不希望开发人员访问HTTP端点或netpipe.我只希望他们通过我指定的net.tcp端口进入.为了做到这一点,我需要以<Service name=""/>某种方式匹配xamlx?

我也尝试过使用创建一个空的.svc文件然后以那种方式指向xamlx的技巧(这样开发人员总是假定它的.svc而不是.xamlx)

<%@ ServiceHost Language="C#" Debug="true" Service="ActivityHubService.xamlx" Factory="System.ServiceModel.Activities.Activation.WorkflowServiceHostFactory" %>

再次,如果我删除命名行为等,这也可以通过foo.svc ..但我似乎无法破解<service> 与freakin xamlx 的整个匹配!:) 呵呵.

令人沮丧..

这个领域的专家是谁?

wcf web-config workflowservice endpoint workflow-foundation-4

1
推荐指数
1
解决办法
2105
查看次数

http wcf错误"无法找到与绑定MetadataExchangeHttpsBinding的端点的方案https匹配的基址..."

我尝试从sharpoint调用我的自定义svc文件时收到此错误.我在这里发布了我的web.config文件,你们可以告诉我这个错误吗?

我试图在sharepoint中拥有我的自定义web服务,所以我创建了一个项目,但是由于这个错误,我无法浏览我的web方法.

<?xml version="1.0"?>
<configuration>
  <system.serviceModel>
    <services>
      <service behaviorConfiguration="AlertWcfService.CustomServiceBehaviour"
        name="AlertWcfService.AlertService">
        <endpoint address="http://localhost:2000/" binding="basicHttpBinding" bindingConfiguration="basicHttpBindingConfiguration"
                  contract="AlertWcfService.IAlertService" >
          <identity>
            <dns value="localhost" />
          </identity>
        </endpoint>
        <endpoint address="mex" binding="mexHttpsBinding" contract="IMetadataExchange" />
        <host>
          <baseAddresses>
            <add baseAddress="http://localhost:2000/"></add>
          </baseAddresses>
        </host>
      </service>
    </services>
    <bindings>
      <basicHttpBinding>
        <binding name="basicHttpBindingConfiguration">
          <security mode="Transport">
            <transport clientCredentialType="None" proxyCredentialType="None" realm=""/>
            <message clientCredentialType="Certificate" algorithmSuite="Default" />
          </security>
        </binding>
      </basicHttpBinding>
    </bindings>
    <behaviors>
      <serviceBehaviors>
        <behavior name="AlertWcfService.CustomServiceBehaviour">
          <!--<serviceMetadata httpsGetEnabled="false"/>-->
          <serviceMetadata httpGetEnabled="false" httpsGetEnabled="false"/>
          <serviceDebug includeExceptionDetailInFaults="false"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>
  </system.serviceModel>
</configuration>
Run Code Online (Sandbox Code Playgroud)

wcf binding alert endpoint svc

1
推荐指数
1
解决办法
7510
查看次数

为什么IPEndPoint可变?有不可变版本吗?

根据MSDN上的documenation,IPEndPoint可以有它AddressPort属性进行设置.

为什么这个课程设计为可变的?似乎它应该是不可变的,因为类似的原因是相同String的.

这个类的不可变版本是否更适合传递线程,事件处理程序等?

c# network-programming immutability endpoint

1
推荐指数
1
解决办法
92
查看次数

Apache Camel pollEnrich 没有复制所有文件

我有一条骆驼路线,如下所示

from("activemq:queue:upload" )
    .pollEnrich().simple("file:basePath/${header.ID}?noop=true&recursive=true")
    .aggregationStrategy(new ExampleAggregationStrategy()) 
    .timeout(2000) 
 .toD("ftp:${header.destinationURI}")
Run Code Online (Sandbox Code Playgroud)

在我的文件系统中file:basePath/${header.ID}包含多个文件夹。执行上述路由时,只会将第一个文件夹中的第一个文件复制到 ftp 服务器。剩余的文件夹(带子文件夹)没有被复制到 ftp 服务器!

ExampleAggregationStrategy()类的aggregate()方法看起来像以下

@Override
        public Exchange aggregate(Exchange oldExchange, Exchange newExchange) {
            String destinationURI = "populatedURI";

        oldExchange.setOut(newExchange.getIn());
        oldExchange.getOut().setHeader("ID",  oldExchange.getIn().getHeader("ID"));
        oldExchange.getOut().setHeader("destinationURI", destinationURI);
        oldExchange.setFromEndpoint(newExchange.getFromEndpoint());
        oldExchange.setFromRouteId(newExchange.getFromRouteId());

            return oldExchange;
        }
Run Code Online (Sandbox Code Playgroud)

我也试过设置properties and onCompletions。仍然没有运气!我错过了什么aggregationStrategy吗?
如何成功复制所有文件和文件夹pollEnrich

java activemq-classic jms apache-camel endpoint

1
推荐指数
1
解决办法
3284
查看次数

部署作为服务创建的sagemaker端点

我已经在AWS Sagemaker上训练了信用欺诈数据集并创建了模型的端点。假设我想将其作为服务提供给我的朋友。他有一些信用数据,想知道交易是否欺诈。他希望使用我的端点。我该如何分享?

  1. 我应该共享我的终端ARN吗?我认为这不是正确的方法。没有普通帐户,他将无法使用它。
  2. 还是有另一种方法

endpoint amazon-web-services amazon-sagemaker

1
推荐指数
1
解决办法
36
查看次数